2009年6月11日

JDK 1.6 Get MAC Address

JDK 1.6 NetworkInterface
Coding Diary - NetworkInterface getHardwareAddress Example
www.java2s.com - Get MAC address of a host

import java.math.BigInteger;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;

public class Main {

public static void main(String[] args) throws SocketException {
Enumeration<NetworkInterface> nis = NetworkInterface.getNetworkInterfaces();
while (nis.hasMoreElements()) {
NetworkInterface ni = nis.nextElement();
System.out.println("Display Name: " + ni.getDisplayName());
System.out.println("Name: " + ni.getName());

byte[] ha = ni.getHardwareAddress();
if (ha != null) {
BigInteger bi = new BigInteger(1, ha);
System.out.printf("Physical Address: %0" + (ha.length << 1) + "x\n", bi);
}

Enumeration<InetAddress> ips = ni.getInetAddresses();
while (ips.hasMoreElements()) {
InetAddress addr = ips.nextElement();

System.out.println("Host Name: " + addr.getHostName());
System.out.println("IP Address: " + addr.getHostAddress());
}
System.out.println();
}
}
}

沒有留言:

網誌存檔