java获取本地mac地址

小灰灰 2023-10-01 15:57 86阅读 0赞

如何用java代码获取本地mac地址呢?

我们可以通过cmd命令:ipconfig -all 来查看我们电脑上的mac地址是多少。

" class="reference-link">watermark_type_d3F5LXplbmhlaQ_shadow_50_text_Q1NETiBAUm9jLXhi_size_20_color_FFFFFF_t_70_g_se_x_16

目录

一、自定义方法获取本地mac地址

二、利用第三方工具类获取本地mac地址

三、两种方法程序运行结果


一、自定义方法获取本地mac地址

  1. /**
  2. * 获取本地mac地址
  3. * 注意:物理地址是48位,别和ipv6搞错了
  4. * @param inetAddress
  5. * @return 本地mac地址
  6. */
  7. private static String getLocalMac(InetAddress inetAddress) {
  8. try {
  9. //获取网卡,获取地址
  10. byte[] mac = NetworkInterface.getByInetAddress(inetAddress).getHardwareAddress();
  11. StringBuffer sb = new StringBuffer();
  12. for (int i = 0; i < mac.length; i++) {
  13. if (i != 0) {
  14. sb.append("-");
  15. }
  16. //字节转换为整数
  17. int temp = mac[i] & 0xff;
  18. String str = Integer.toHexString(temp);
  19. if (str.length() == 1) {
  20. sb.append("0" + str);
  21. } else {
  22. sb.append(str);
  23. }
  24. }
  25. return sb.toString();
  26. } catch (Exception exception) {
  27. }
  28. return null;
  29. }

二、利用第三方工具类获取本地mac地址

需要引入hutool依赖包

  1. <dependency>
  2. <groupId>cn.hutool</groupId>
  3. <artifactId>hutool-all</artifactId>
  4. <version>5.7.19</version>
  5. </dependency>

使用方法:参考文档:https://apidoc.gitee.com/loolly/hutool/cn/hutool/core/net/NetUtil.html

  1. InetAddress inetAddress = InetAddress.getLocalHost();
  2. //第二种方式:利用hutool工具类中的封装方法获取本机mac地址
  3. String localMacAddress2 = NetUtil.getMacAddress(inetAddress);
  4. System.out.println("localMacAddress2 = " + localMacAddress2);

三、两种方法程序运行结果

  1. public static void main(String[] args) throws UnknownHostException {
  2. InetAddress inetAddress = InetAddress.getLocalHost();
  3. //第一种方式:利用自己写的方法获取本地mac地址
  4. String localMacAddress1 = getLocalMac(inetAddress);
  5. System.out.println("localMacAddress1 = " + localMacAddress1);
  6. //第二种方式:利用hutool工具类中的封装方法获取本机mac地址
  7. String localMacAddress2 = NetUtil.getMacAddress(inetAddress);
  8. System.out.println("localMacAddress2 = " + localMacAddress2);
  9. }

watermark_type_d3F5LXplbmhlaQ_shadow_50_text_Q1NETiBAUm9jLXhi_size_15_color_FFFFFF_t_70_g_se_x_16

发表评论

表情:
评论列表 (有 0 条评论,86人围观)

还没有评论,来说两句吧...

相关阅读

    相关 获取mac地址

    可以在终端中使用 "ifconfig" 命令来查看当前网络接口的 MAC 地址。例如,如果你想查看无线网卡的 MAC 地址,可以运行 "ifconfig en0"。如果要查看有