使用java获取本机地址的示例

2014-11-24 07:23:36 · 作者: · 浏览: 0
[java]
/**
* Get my host IP address
* @author Administrator
*
*/
import java.util.Enumeration;
import java.net.*;

public class InetAddressExample {
public static void main(String[] args){
//get the network interfaces and the associated addresses for this host
try{
Enumeration interfaceList= NetworkInterface.getNetworkInterfaces();
if(interfaceList==null){
System.out.println("No interfaces found!");
}else{
while(interfaceList.hasMoreElements()){
NetworkInterface iface = interfaceList.nextElement();
System.out.println("Interface:"+iface.getName()+":");
Enumeration addrList = iface.getInetAddresses();
if (!addrList.hasMoreElements()) {
System.out.println("\t(No addresses for this interface)");
}
while (addrList.hasMoreElements()) {
InetAddress address = addrList.nextElement();
System.out.print("\tAddress "+ ((address instanceof Inet4Address "(v4)":
(address instanceof Inet6Address "(v6)" : "( )"))));
System.out.println(": " + address.getHostAddress());
}
}
}

}catch(SocketException se){
System.out.println("Error getting network interfaces:" + se.getMessage());
}
// Get name(s)/address(es) of hosts given on command line 34 for
for (String host : args) {
try{
System.out.println(host + ":");
InetAddress[] addressList = InetAddress.getAllByName(host);
for (InetAddress address : addressList) {
System.out.println("\t" + address.getHostName() + "/" + address.getHostAddress());
}
}catch(UnknownHostException e){
System.out.println("\tUnable to find address for " + host);
}
}
}
}

摘自 Paste my life.