灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:1704回复:0

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

楼主#
更多 发布于:2012-09-08 09:36

[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<NetworkInterface> 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<InetAddress> 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);
             }
         }
     }
}  


喜欢0 评分0
游客

返回顶部