本文来自投稿,不代表长河网立场,转载请注明出处: http://www.changhe99.com/a/vV6vzA16Gg.html
Java如何获得本机MAC地址,Java获得本地MAC地址的方式有很多很多。这里只需要配置好Java环境就好。也就是说,不需要第三方插件,不需要CMD操作。下面跟我来,我演示给大家看~
Java获得本地MAC地址的方式有很多很多。这里只需要配置好Java环境就好。也就是说,不需要第三方插件,不需要CMD操作。下面跟我来,我演示给大家看~步骤阅读工具/原料一台配置好java环境的可以上网的电脑Java获取本地Mac地址1首先,创建工程,包,和一个类。在此不加详述,我们直接看代码。这里,我把这个类命名为GetMacAddr步骤阅读2这里,最最关键的就是这里这个方法。我们通过NetworkInterface这个类来操作。也就是通过getLocalHost()方法先得到本机IP,然后调用getHardwareAddress()方法得到一个byte数组的地址。我们把六位地址传到一个byte数组里面,然后输出来就是。不多废话,看代码:privatevoidgetMACAddr() throwsSocketException,UnknownHostException{ //获得IP NetworkInterfacenetInterface= NetworkInterface.getByInetAddress(InetAddress.getLocalHost()); //获得Mac地址的byte数组 byte[]macAddr=netInterface.getHardwareAddress(); System.out.print(\"MACAddr:\\t\"); //循环输出 for(byteb:macAddr){ //这里的toHexString()是自己写的格式化输出的方法,见下步。 System.out.print(toHexString(b)+\"\"); }}步骤阅读3上一步骤中,为什么会出现一个toHexString()方法呢? 因为可能10进制转16进制时候可能会出现单字符,所以,如果有出现单字符的情况,我们在其前面添加一个“0”做占位符。这也是为了视觉的直观,也夹带着个人的习惯。privatestaticStringtoHexString(intinteger){ //将得来的int类型数字转化为十六进制数 Stringstr=Integer.toHexString((int)(integer&0xff)); //如果遇到单字符,前置0占位补满两格 if(str.length()==1){ str=\"0\"+str; } returnstr;}步骤阅读4然后,我们写一个简单的main方法测试一下。publicstaticvoidmain(String[]args) throwsSocketException,UnknownHostException{ newGetMacAddr().getMACAddr();}步骤阅读5结果无误,我们得到了本地的MAC地址。大家一起来试一试吧!步骤阅读END注意事项编程嘛,大家注意代码书写规范啊!不要变成和笔者一样的呆子哦~~
赞
(0)