【发布时间】:2016-09-01 07:45:20
【问题描述】:
您好,我正在尝试打印计算机的以太网 MAC 地址,但我不确定如何更改我的代码以打印无线局域网地址,我在 google 上找不到任何信息。
public void getMacAddress(){
InetAddress ip;
try {
ip = InetAddress.getLocalHost();
NetworkInterface network = NetworkInterface.getByInetAddress(ip);
byte[] mac = network.getHardwareAddress();
System.out.print("Current MAC address : ");
StringBuilder sb = new StringBuilder();
for (int i = 0; i < mac.length; i++) {
sb.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : ""));
}
System.out.println(sb.toString());
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (SocketException e){
e.printStackTrace();
}
}
我正在寻找打印以太网适配器本地连接:而不是 无线 LAN 适配器 无线网络连接 3:
【问题讨论】:
-
这个答案有帮助吗? stackoverflow.com/questions/20350150/…
-
两个连接有不同的ip吗?
-
如果我正确理解了代码,它会根据我运行程序的每个系统发生变化,具体取决于可用的连接数,因此最终会打印错误的地址。如果我错了,请纠正我
-
无线和以太网的物理地址不同是的。并且因为如果更换无线卡,无线可以更轻松地更改,因此在我的情况下它不起作用。我正在寻找更永久的东西,以太网物理地址适用于
-
查看“NetworkInterface”类,根据那里返回的信息,您应该能够确定正确的接口
标签: java mac-address