在我的程序中,用户输入一个url字符串,比如
http://www.engineering.uiowa.edu/~hawkeng//fall01/graphics/potato.gif
我该如何获取此url的IP地址?我试过使用
InetAddress address = InetAddress.getByName(urlStr);
但是结果总是返回null。获取IP地址的正确方法是什么?
试试这个:
InetAddress address = InetAddress.getByName(new URL(urlString).getHost());
获取原始IP:
String ip = address.getHostAddress();
您需要将hostname
赋予getByName()方法,它会返回
给定主机名称的主机的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());