43

私のプログラムでは、ユーザーはURL文字列を入力します。

http://www.engineering.uiowa.edu/~hawkeng//fall01/graphics/potato.gif

このURLのIPアドレスを取得するにはどうすればよいですか?使ってみました

InetAddress address = InetAddress.getByName(urlStr);

しかし、結果は常にnullに戻ります。IPアドレスを取得する適切な方法は何ですか?

4

2 に答える 2

71

これを試して:

InetAddress address = InetAddress.getByName(new URL(urlString).getHost());

生のIPを取得するには:

String ip = address.getHostAddress();
于 2012-02-15T02:03:34.937 に答える
11

getByName()メソッドhostnameに渡す必要があり、

ホストの名前が指定されたホストのIPアドレス。

URL url = new URL("http://www.engineering.uiowa.edu/~hawkeng//fall01/graphics/potato.gif");
System.out.println(url.getHost());
InetAddress address = InetAddress.getByName(url.getHost());
System.out.println(address.toString());

出力=www.engineering.uiowa.edu/128.255.17.182

取得するにはIP address

String temp = address.toString();
String IP = temp.substring(temp.indexOf("/")+1,temp.length());
于 2012-02-15T02:09:09.587 に答える