纯Java获得本地MAC地址

简介: import java.net.*;public class Ipconfig{     public static void main(String[] arguments) throws Exception{         InetAddress ia = InetAddress.
import java.net.*;
public class Ipconfig{
     public static void main(String[] arguments) throws Exception{
         InetAddress ia = InetAddress.getLocalHost();//获取本地IP对象
         System.out.println("MAC ......... "+getMACAddress(ia));
     }
     //获取MAC地址的方法
     private static String getMACAddress(InetAddress ia)throws Exception{
         //获得网络接口对象(即网卡),并得到mac地址,mac地址存在于一个byte数组中。
         byte[] mac = NetworkInterface.getByInetAddress(ia).getHardwareAddress();
         
         //下面代码是把mac地址拼装成String
         StringBuffer sb = new StringBuffer();
         
         for(int i=0;i<mac.length;i++){
             if(i!=0){
                 sb.append("-");
             }
             //mac[i] & 0xFF 是为了把byte转化为正整数
             String s = Integer.toHexString(mac[i] & 0xFF);
             sb.append(s.length()==1?0+s:s);
         }
         
         //把字符串所有小写字母改为大写成为正规的mac地址并返回
         return sb.toString().toUpperCase();
     }
 }
若转载请注明出处!若有疑问,请回复交流!
目录
相关文章
|
2月前
|
Java Maven
java修改当前项目的maven仓库地址为国内
修改当前项目的maven仓库地址为国内
|
1月前
|
NoSQL Java 网络安全
Redis在java(Maven)中使用,常用基本命令大全,最全Termius怎么进行端口映射(MAC系统最简单教学)
Redis在java(Maven)中使用,常用基本命令大全,最全Termius怎么进行端口映射(MAC系统最简单教学)
|
2月前
|
存储 Java 编译器
Java | 如何从内存解析的角度理解“数组名实质是一个地址”?
这篇文章讨论了Java内存的简化结构以及如何解析一维和二维数组的内存分配。在Java中,内存分为栈和堆,栈存储局部变量,堆存储通过`new`关键字创建的对象和数组。方法区包含静态域和常量池。文章通过示例代码解释了一维数组的创建过程,分为声明数组、分配空间和赋值三个步骤,并提供了内存解析图。接着,介绍了二维数组的内存解析,强调二维数组是“数组的数组”,其内存结构中,外层元素存储内层数组的地址。最后,文章提到了默认初始化方式对初始值的影响,并给出了相关测试代码。
32 0
|
8月前
|
Java
java代码实现使用网络地址下载文件
java代码实现使用网络地址下载文件
113 0
|
9月前
|
存储 网络协议 安全
IP地址、MAC地址、互联网、WLAN、运营商、子网掩码、网络地址、网段、网关、集线器、光纤、基站
IP地址、MAC地址、互联网、WLAN、运营商、子网掩码、网络地址、网段、网关、集线器、光纤、基站
96 0
|
2月前
|
监控 前端开发 Java
一套简单通用的Java后台管理系统,拿来即用,非常方便(附项目地址)
一套简单通用的Java后台管理系统,拿来即用,非常方便(附项目地址)
61 0
|
2月前
|
Java Python
Java【代码分享 01】Java版本的NGender根据中文姓名猜测其性别及男性化/女性化程度(Python版本地址+Java版本源码+基础数据)
Java【代码分享 01】Java版本的NGender根据中文姓名猜测其性别及男性化/女性化程度(Python版本地址+Java版本源码+基础数据)
46 0
|
2月前
|
Java API Maven
Java获取当前项目下的文件或目录物理地址System.getProperty(“user.dir“)
Java获取当前项目下的文件或目录物理地址System.getProperty(“user.dir“)
|
7月前
|
Java
基于Java图形界面的IPV4与网址的地址解析器
基于Java图形界面的IPV4与网址的地址解析器
29 0
|
12月前
|
Java
java 遍历打印ip 0.0.0.0 -255.255.255.255,不包含保留地址
java 遍历打印ip 0.0.0.0 -255.255.255.255,不包含保留地址