Java如何获得本机MAC地址

2025-04-19 20:50:49

Java获得本地MAC地址的方式有很多很多。这里只需要配置好Java环境就好。也就是说,不需要第三方插件,不需要CMD操作。下面跟我来,我演示给大家看~

Java如何获得本机MAC地址

工具/原料

一台配置好java环境的可以上网的电脑

Java获取本地Mac地址

1、首先,创建工程,包,和一个类。在此不加详述,我们直接看代码。这里,我把这个类命名为GetMacAddr

Java如何获得本机MAC地址

2、这里,最最关键的就是烂瘀佐栾这里这个方法。我们通过NetworkInterface这个类来操作。也就是通过getLocalH泠贾高框ost()方法先得到本机IP,然后调用getHardwareAddress()方法得到一个byte数组的地址。我们把六位地址传到一个byte数组里面,然后输出来就是。不多废话,看代码:private void getMACAddr()    throws SocketException, UnknownHostException {  // 获得IP  NetworkInterface netInterface =    NetworkInterface.getByInetAddress(InetAddress.getLocalHost());  // 获得Mac地址的byte数组  byte[] macAddr = netInterface.getHardwareAddress();  System.out.print("MAC Addr:\t");  // 循环输出  for (byte b : macAddr) {    // 这里的toHexString()是自己写的格式化输出的方法,见下步。     System.out.print(toHexString(b) + " ");  }}

Java如何获得本机MAC地址

3、上一步骤中,为什么会出现一个toHexString()方法呢?  因为可能10进制转16进制时候可能会出现单字符,所以,如果有出现单字符的情况,我们在其前面添加一个“0”做占位符。这也是为了视觉的直观,也夹带着个人的习惯。private static String toHexString(int integer) {  // 将得来的int类型数字转化为十六进制数  String str = Integer.toHexString((int) (integer & 0xff));  // 如果遇到单字符,前置0占位补满两格  if (str.length() == 1) {     str = "0" + str;  }  return str;}

Java如何获得本机MAC地址

4、然后,我们写一个简单的main方法测试一下。public static void main(String[] args)       throws SocketException, UnknownHostException {  new GetMacAddr().getMACAddr();}

Java如何获得本机MAC地址

5、结果无误,我们得到了本地的MAC地址。大家一起来试一试吧!

Java如何获得本机MAC地址
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢