您的位置:首页 > 运维架构 > Linux

JAVA 如何取MAC 地址(Linux和window)

2006-04-20 15:34 567 查看
Linux 运行shell 命令ifconfig 查看mac 地址, Window 运行DOS命令ipconfig来查看mac地址

MACUtil.java


package com.anq.framework.util;




import java.io.BufferedReader;


import java.io.IOException;


import java.io.InputStreamReader;






/** *//**


* Net Util .


*


* @author waterborn


*/




public class MACUtil ...{






/** *//**


* Return Opertaion System Name;


*


* @return os name.


*/




public static String getOsName() ...{


String os = "";


os = System.getProperty("os.name");


return os;


}






/** *//**


* Returns the MAC address of the computer.


*


* @return the MAC address


*/




public static String getMACAddress() ...{


String address = "";


String os = getOsName();




if (os.startsWith("Windows")) ...{




try ...{


String command = "cmd.exe /c ipconfig /all";


Process p = Runtime.getRuntime().exec(command);


BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));


String line;




while ((line = br.readLine()) != null) ...{




if (line.indexOf("Physical Address") > 0) ...{


int index = line.indexOf(":");


index += 2;


address = line.substring(index);


break;


}


}


br.close();


return address.trim();




} catch (IOException e) ...{


}




} else if (os.startsWith("Linux")) ...{


String command = "/bin/sh -c ifconfig -a";


Process p;




try ...{


p = Runtime.getRuntime().exec(command);


BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));


String line;




while ((line = br.readLine()) != null) ...{




if (line.indexOf("HWaddr") > 0) ...{


int index = line.indexOf("HWaddr") + "HWaddr".length();


address = line.substring(index);


break;


}


}


br.close();




} catch (IOException e) ...{


}


}


address = address.trim();


return address;


}










/** *//**


* Main Class.


*


* @param args


*/




public static void main(String[] args) ...{


System.out.println("Operation System=" + getOsName());


System.out.println("Mac Address=" + getMACAddress());


}


}



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: