执行【本地命令】获取本机MAC

来源:互联网 发布:云计算三年行动计划 编辑:程序博客网 时间:2024/06/04 19:16

代码:

package com.test;import java.io.BufferedReader;  import java.io.IOException;  import java.io.InputStream;  import java.io.InputStreamReader;  import java.io.LineNumberReader;  public class MACTest {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubMACTest get = new MACTest();          System.out.println("1="+get.getMAC());  }// 运行速度【快】      public String getMAC() {          String mac = null;          try {              Process pro = Runtime.getRuntime().exec("cmd.exe /c ipconfig /all");              //Process pro = Runtime.getRuntime().exec("ipconfig /all");                          InputStream is = pro.getInputStream();             // InputStream is =  pro.getErrorStream();            //不加编码中文会乱码            BufferedReader br = new BufferedReader(new InputStreamReader(is,"GBK"));              String message = br.readLine();                int index = -1;              int i=0;            while (message != null) {              System.out.println(i+": "+message);                if ((index = message.indexOf("物理地址")) > 0) {                  System.out.println(message.length());                    mac = message.substring(message.length()-18).trim();                      break;                  }                                 /* if ((index = message.indexOf("IPv4")) > 0) {                      mac = message.substring(index + 36,message.indexOf("(")).trim();                      break;                  } */                i++;                message = br.readLine();              }              System.out.println(mac);              br.close();              pro.destroy();          } catch (IOException e) {              System.out.println("Can't get mac address!");              return null;          }          return mac;      }  }

 

可直接使用Process pro = Runtime.getRuntime().exec("ipconfig /all");  

 

结果:

 

 

参考:http://blog.csdn.net/javaalpha/article/details/6142389

 

原创粉丝点击