guoln 发表于 2012-1-4 11:49:56

Java如何得到本地网络地址


java.InetAddress.getLocalHost()不是一种通用的功能,因为这个是得到系统网络配置文件的内容,例如*nix上面就是/etc/hosts的内容。假设要得到一种和OS有关的网卡配置内容,就要运用java.NetworkInte**ce.getNetworkInte**ce()才干获得和java语言实现相关的localhost信息。 import java.*;public class kg { public static void main(String args[]){ try{ java.InetAddress ad=java.InetAddress.getLocalHost(); System.out.println(ad.getAddress()); System.out.println(ad.getCanonicalHostName()); System.out.println(ad.getHostName()); System.out.println(ad.isMulticastAddress()); System.out.println(ad.isLoopbackAddress()); /*Windows output * smartyou钱包怎么样InetAddress ip=ads.nextElement(); if(!ip.isSiteLocalAddress() !ip.isLoopbackAddress() !(ip.getHostAddress().indexOf(":")==-1)){ System.out.println("_My ip is:"+ip.getHostAddress()); }//end if } } /* Windows output * x:lo * y:MS TCP Loopback inte**ce * x:eth0 * y:Broadcom 440x 10/100 Integrated Controller */ }catch(java.UnknownHostException e){ /* Linux out all: * [B@19821f * localhost.localdomain * localhost.localdomain * false * true * x:lo * y:lo */ }catch(java.SocketException e){ System.out.println("Socket exception"); } }}



页: [1]
查看完整版本: Java如何得到本地网络地址