java 获取路由器mac_求好人帮助,如何用java语言获取像无线路由器上的MAC地址,我会重赏...

如图所示的无线路由max地址,,挺说可以利用java的工具类java.net.NetworkInterface获取次无线网卡的max,我看了某个人的微博,他这样写:“通过java.net.NetworkInterface获取本机正...

如图所示的无线路由max地址,

,挺说可以利用java的工具类java.net.NetworkInterface获取次无线网卡的max,我看了某个人的微博,他这样写:“通过java.net.NetworkInterface获取本机正在使用的网卡中的第一个,各平台通用,winows和SUSE Linux下测试正常(如果想获取所有的网卡MAC——通过isUp()方法来区分是否正在运作,或想获取所有正在使用的网卡的MAC,稍作改动即可)的MAC地址”,代码如下:

import java.net.NetworkInterface;

import java.util.Enumeration;

public class MacUtil {

private MacUtil() {

}

public static String getMacAddress() throws Exception{

Enumeration ni = NetworkInterface.getNetworkInterfaces();

while(ni.hasMoreElements()){

NetworkInterface netI = ni.nextElement();

byte[] bytes = netI.getHardwareAddress();

if(netI.isUp() && netI != null && bytes != null && bytes.length == 6){

StringBuffer sb = new StringBuffer();

for(byte b:bytes){

//与11110000作按位与运算以便读取当前字节高4位

sb.append(Integer.toHexString((b&240)>>4));

//与00001111作按位与运算以便读取当前字节低4位

sb.append(Integer.toHexString(b&15));

sb.append("-");

}

sb.deleteCharAt(sb.length()-1);

return sb.toString().toUpperCase();

}

}

return null;

}

public static void main(String[] args) throws Exception{

System.out.println(MacUtil.getMacAddress());

}

}

我在我的电脑上运行,结果为“78-E4-00-3F-83-1E” ,要获取所有的max我要怎么样修改呢?

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值