java获取本地计算机MAC地址

java获取本地计算机MAC地址代码如下:

public class SocketMac {
	
    //将读取的计算机MAC地址字节转化为字符串
    public static String transBytesToStr(byte[] bytes){  
        StringBuffer buffer = new StringBuffer();  
        for(int i = 0; i < bytes.length; i++){  
            if(i != 0)  
                buffer.append("-");  
            //bytes[i]&0xff将有符号byte数值转换为32位有符号整数,其中高24位为0,低8位为byte[i]  
            int intMac = bytes[i]&0xff;  
            //toHexString函数将整数类型转换为无符号16进制数字  
            String str = Integer.toHexString(intMac);  
            if(str.length() == 0){  
                buffer.append("0");  
            }  
            buffer.append(str);  
        }  
        return buffer.toString().toUpperCase();  
    }  
    
    //获取计算机MAC地址
    public static String getLocatMac(){
    	String result = "";
        try {  
            InetAddress adress = InetAddress.getLocalHost();  
            NetworkInterface net = NetworkInterface.getByInetAddress(adress);  
            byte[] macBytes = net.getHardwareAddress();
            result = transBytesToStr(macBytes); 
        } catch (UnknownHostException e) { 
            result = "";
            e.printStackTrace();
        } catch (SocketException e) {
            result = "";
            e.printStackTrace();
        }finally {
	    return result;
	} 
    }
    
    //main方法测试,打印本地计算机mac地址
    public static void main(String[] args) {
    	System.out.println(SocketMac.getLocatMac());
    }  
} 

  

posted @ 2017-10-12 16:49  lsyBlog  阅读(1308)  评论(0编辑  收藏  举报