JAVA里的PING是在JDK 1.5后用了新的函数isreachable去完成,详细介绍如下:
InetAddress对象的常用方法
InetAddress类有很多get方法,用来获取主机名,主机地址等信息。主要有:
byte[] getAddress() 返回次InetAddress对象的原始IP地址,保管为一个byte数组
String getCanonicalHostName() 获取此IP地址的完全限定域名
String getHostAddress() 获取IP地址的字符串,返回为一个String
String getHostName() 获取此IP地址的主机名
下面一个简单的例子展现这些方法的运用:
package org.dakiler.javanet.chapter1;
import java.InetAddress;
public class Example3
{
public static void main(String args[])throws Exception
{
InetAddress address=InetAddress.getByName("microsoft");
System.out.println("ip: "+address.getHostAddress());
System.out.println("host: "+address.
比度克淘宝旗舰店getHostName());
System.out.println("canonical host name: "+address.getCanonicalHostName());
byte[] bytes=address.getAddress();
for(byte b:bytes)
{
if(b=0)System.out.print(b);
else System.out.print(256+b);
System.out.print(" ");
}
}
}
这个例子首先是获取microsoft的对应的InetAddress实例,然后分别打印address.getHostAddress() address.getHostName()以及address.getCanonicalHostName()。在这个例子中,需要注意的是IP地址中,每一个都是0-255之间的,是无符号的。但是java中的byte表示的区域是-128~127,所以两头需要做一个转换。