【发布时间】:2012-08-04 06:40:39
【问题描述】:
我想在我的程序中根据给定的 IP 地址查找主机名。 是否有可能得到它,如果可以,请您提供代码。谢谢。
【问题讨论】:
我想在我的程序中根据给定的 IP 地址查找主机名。 是否有可能得到它,如果可以,请您提供代码。谢谢。
【问题讨论】:
是的,有可能。
import java.net.*;
public class HostName
{
public static void main(String args[])
{
InetAddress inetAddress =InetAddress.getByName("127.64.84.2");//get the host Inet using ip
System.out.println ("Host Name: "+ inetAddress.getHostName());//display the host
}
}
【讨论】:
这样的事情应该会为你指明正确的方向:
import java.net.InetAddress;
import java.net.UnknownHostException;
public class DNSLookup {
public static void main(String args[]) {
try {
InetAddress host;
if (args.length == 0) {
host = InetAddress.getLocalHost();
} else {
host = InetAddress.getByName(args[0]);
}
System.out.println("Host:'" + host.getHostName()
+ "' has address: " + host.getHostAddress());
} catch (UnknownHostException e) {
e.printStackTrace();
}
}
}
【讨论】:
你可以使用InetAddress类的getHostName()方法。
【讨论】:
试试这个....
System.out.println(InetAddress.getByName("IP_ADDR").getHostName());
【讨论】:
嘿,我正在使用上述方法,但 getHostName() 方法没有返回给定 ip 的主机名。
见代码:
try {
// This is ip of tutorialspoint.com
InetAddress addr2 = InetAddress.getByName("127.64.84.2");
op.setText("Host name is: "+addr2.getHostName());
}
catch ( UnknownHostException e3) {
op.setText("Error: Host not found" + e3);
}
【讨论】: