获取客户端Mac地址

最近需要做一个获取客户端MAc地址的功能,网上找了很多资料,先列出其功能实现:

代码如下:

 public String getMACAddress(String ip){
            String str = "";
            String macAddress = "";
            try {
                
                String scancmd="nbtstat -A ";      //64位和32位系统过滤
                File file = new File("C:\\Windows\\SysWOW64");
                if(file.exists()){
                scancmd = "c:\\Windows\\sysnative\\nbtstat.exe -A ";
                }
                Process p = Runtime.getRuntime().exec(scancmd + ip);
                InputStreamReader ir = new InputStreamReader(p.getInputStream(),"GBK");    //使用GBK
                LineNumberReader input = new LineNumberReader(ir);
                for (int i = 1; i < 100; i++) {
                    str = input.readLine();
                    if (str != null) {
                        if (str.indexOf("MAC 地址") > 1) {          
                            macAddress = str.substring(str.indexOf("=") + 1, str.length());
                            break;
                        }
                    }
                    if (str.indexOf("MAC Address")>0) {
                        macAddress = str.substring(str.indexOf("MAC Address") + 14, str.length());
                        break;
                        }
                }
            } catch (IOException e) {
                e.printStackTrace(System.out);
            }
            return macAddress;
        }

其实整个功能实现起来代码很容易就看懂,这里就不多做解释。希望能帮到有需要的人。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值