java 获取 MAC OS 网卡的 MAC 地址
package com.macro.mall.portal.util;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;
public class mac {
public static void main(String[] args) {
try {
Enumeration<NetworkInterface> networkInterfaces = NetworkInterface.getNetworkInterfaces();
while (networkInterfaces.hasMoreElements()) {
NetworkInterface networkInterface = networkInterfaces.nextElement();
byte[] macAddress = networkInterface.getHardwareAddress();
if (macAddress != null) {
System.out.print("MAC address for " + networkInterface.getName() + ": ");
for (int i = 0; i < macAddress.length; i++) {
System.out.format("%02X%s", macAddress[i], (i < macAddress.length - 1) ? "-" : "");
}
System.out.println();
}
}
} catch (SocketException e) {
e.printStackTrace();
}
}
}
测试结果:直接请求获取到的数据+换网请求获取到的数据是一样的,关机重启后:MAC address for llw0,MAC address for awdl0会变化,想要一台电脑一直获取同样的数据时,可以加个判断,再输出
if ("en0".equals(nic.getName())) {
}