Java 對於主機的 IP 定址以及主機名稱的相關訊息主要就是透過 java.net.InetAddress
特別的是 InetAddress 沒有建構子
但是可以透過以下三個類別方法來取得 InetAddress 的實例
1. getLocalHost() 他會回傳目前本地端主機的 InetAddress 實例
範例:InetAddress myHost = InetAddress.getLocalHost();
2. getByName(String) 會回傳指向傳入參數的主機之 InetAddress 實例
範例:InetAddress addr = InetAddress.getByName("192.168.x.yy");
InetAddress addr = InetAddress.getByName("Allen's PC");
3. getAllByName(String) 會回傳傳入參數所指定的主機之所有 InetAddress 實例
範例:InetAddress addr = InetAddress.getAllByName("Allen's PC");
*** 注意以上的所有方法會拋出 UnknownHostException (如果位址不能解析)
以下以一個範例來說明其他 InetAddress 的 method
InetAddress myHost = InetAddress.getLocalHost();
//取得我本機的 InetAddress 實例
System.out.println("主機名稱: " + myHost.getHostName());
// getHostName() 取得我主機的名稱
System.out.println("IP位址: " + myHost.getHostAddress());
// getHostAddress() 取得我主機的 IP
System.out.println("Itest" + myHost.getLocalHost());
// getLocalHost()取得我主機的名稱和IP 格式:hostname/IP
byte[] addr = myHost.getAddress();
//取的IP位址 以 byte 的型態回傳
沒有留言:
張貼留言