web-dev-qa-db-ja.com

Java)の文字列形式のIPからbyte []表現を取得する方法

IPが文字列に格納されているとします。

文字列ip = "192.168.2.1"

そして、4つのintを持つバイト配列を取得したいと思います。どうすればいいですか?ありがとう!

16
Manuel Aráoz

このようなもの:

InetAddress ip = InetAddress.getByName("192.168.2.1");
byte[] bytes = ip.getAddress();
for (byte b : bytes) {
    System.out.println(b & 0xFF);
}
42
Inv3r53

各数値はバイトであるため、あなたの場合、適切なbyte []は{192、168、2、1}になります。

具体的には、文字列がある場合は、最初に「。」で分割してから、結果の各文字列から1バイトを解析する必要があります。

5
Tal Pressman