我需要一种将字符串“IP:PORT”转换为字节数组的方法。我知道如何手动格式化,但我需要一种自动格式化的方法。
示例 IP:
77.125.65.201:8099
我就是不能使用 "".getBytes(); 因为我需要以下格式(不带点和冒号):
[#1 octet ip] [#2 octet ip] [#3 octet ip] [#4 octet ip] [#1 2 octet port]
为了更好地理解:
77 125 65 201 8099
在Java中手动我可以设置它:
byte[] testIP = { 0x4D, 0x7D, 0x41, (byte)0xC9, (byte)0x1FA3 };
我需要找到一种方法,该方法将以正确的格式返回字节数组,并在必要时转换为字节(因为 Java 签名字节)。
这是我所做的,但它不起作用:
private void parseIp(String fullData){
String[] data = fullData.split(":"); // 8099
String[] ip = data[0].split("\\."); // 77 | 125 | 65 | 201
for(int i = 0; i < 4; i++){
System.out.println("---> " + toHex(ip[i]));
}
}
private String toHex(String data){
return Integer.toHexString(Integer.parseInt(data, 16));
}