扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:魏勇 来源:计算机与信息技术 2007年10月13日
关键字:
在本页阅读全文(共3页)
依据上面的代码,我们编写了一个类ReadMAC,见下面程序的源代码:
以下是引用片段: import java.io.*; public class ReadMAC { public static String physicalAddress = "read MAC error!"; public ReadMAC() { } public static String checkPhysicalAddress(){ try{ String line; Process process = Runtime.getRuntime().exec("cmd /c ipconfig /all"); BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream())); while ( (line=bufferedReader.readLine()) != null){ if(line.indexOf("Physical Address. . . . . . . . . :") != -1){ if(line.indexOf(":") != -1){ physicalAddress = line.substring(line.indexOf(":")+2); break; //找到MAC,推出循环 } } } process.waitFor(); }catch(Exception e){ e.printStackTrace(); } return physicalAddress; } public static void main(String[] args) { System.out.println("本机的MAC地址是: "+ ReadMAC.checkPhysicalAddress()); } } |
编译运行该程序的输出结果如图2所示。
图2
由于每一台计算机的MAC地址都不同,所以该程序在不同计算机上运行结果都会不一样。
5 结束语
作为一个跨平台语言,编写的JAVA程序一般都与硬件无关,因而能运行在不同的操作系统环境。但这给编写底层相关的程序时带来不便。
Java的应用程序都存在着一个与其运行环境相联系的Runtime对象,利用该对象可执行外部命令,在WindowsXP/NT/2000环境中的命令IPCONFIG的输出包含有MAC地址。本文编写的Java程序,执行外部命令IPCONFIG,并通过分析该命令的输入流而获得本机的MAC地址。由于IPCONFIG命令是操作系统命令,所以该方法既方便又可靠。
以上讨论的程序适合于Windows XP/NT/2000操作系统,因为它是基于该操作系统的命令IPCONFIG格式的。由于不同操作系统读取MAC地址的命令、以及命令输出格式的不同,所以该程序不能直接运用到其它系统。要移植到其它系统只需针对命令的输出格式稍作修改。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者