用類java.net.InetAddress中
byte[] getAddress() 返回此 InetAddress 對象的原始 IP 地址。
static InetAddress[] getAllByName(String host) 在給定主機名的情況下,根據系統上配置的名稱服務返回其 IP 地址所組成的數組。
static InetAddress getByAddress(byte[] addr) 在給定原始 IP 地址的情況下,返回 InetAddress 對象。
static InetAddress getByAddress(String host, byte[] addr) 根據提供的主機名和 IP 地址創建 InetAddress。
static InetAddress getByName(String host) 在給定主機名的情況下確定主機的 IP 地址。
String getCanonicalHostName() 獲取此 IP 地址的完全限定域名。
String getHostAddress() 返回 IP 地址字元串(以文本表現形式)。
String getHostName() 獲取此 IP 地址的主機名。
static InetAddress getLocalHost() 返回本地主機。
Enumeration netInterfaces = null;
try {
netInterfaces = NetworkInterface.getNetworkInterfaces();
while (netInterfaces.hasMoreElements()) {
NetworkInterface ni = netInterfaces.nextElement();
System.out.println("DisplayName:" + ni.getDisplayName());
System.out.println("Name:" + ni.getName());
Enumeration ips = ni.getInetAddresses();
while (ips.hasMoreElements()) {
System.out.println("IP:"
+ ips.nextElement().getHostAddress());
}
}
} catch (Exception e) {
e.printStackTrace();
}
㈡ java 怎麼根據IP地址獲取主機名
//看看這個代碼如何。
importjava.net.InetAddress;
importjava.net.UnknownHostException;
importjava.util.Properties;
importjava.util.Set;
{
publicstaticvoidmain(String[]args){
InetAddressnetAddress=getInetAddress();
System.out.println("hostip:"+getHostIp(netAddress));
System.out.println("hostname:"+getHostName(netAddress));
Propertiesproperties=System.getProperties();
Set<String>set=properties.stringPropertyNames();//獲取java虛擬機和系統的信息。
for(Stringname:set){
System.out.println(name+":"+properties.getProperty(name));
}
}
(){
try{
returnInetAddress.getLocalHost();
}catch(UnknownHostExceptione){
System.out.println("unknownhost!");
}
returnnull;
}
publicstaticStringgetHostIp(InetAddressnetAddress){
if(null==netAddress){
returnnull;
}
Stringip=netAddress.getHostAddress();//gettheipaddress
returnip;
}
publicstaticStringgetHostName(InetAddressnetAddress){
if(null==netAddress){
returnnull;
}
Stringname=netAddress.getHostName();//getthehostaddress
returnname;
}
}
這個代碼簡單明了,就是調用現成的InetAddress類
㈢ java中InetAddress的getAddress和getHostAddress有什麼區別
getHostAddress為byte數組,getAddress是個String字元串。
所以,getAddress方便展示,getHostAddress方便作為數據進行處理。