获取常用系统的物理地址
来源:互联网 发布:百度大数据分析工具 编辑:程序博客网 时间:2024/06/07 03:02
获取系统的物理地址工具类:
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashSet;import java.util.Set;public class GetMacAddress{ public static String getOSName() { return System.getProperty("os.name").toLowerCase(); } public static String getUnixMACAddress() { String mac = null; BufferedReader bufferedReader = null; Process process = null; try { process = Runtime.getRuntime().exec("ifconfig eth0"); bufferedReader = new BufferedReader(new InputStreamReader(process .getInputStream())); String line = null; int index = -1; while ((line = bufferedReader.readLine()) != null) { index = line.toLowerCase().indexOf("hwaddr"); if (index != -1) { mac = line.substring(index + "hwaddr".length() + 1).trim(); break; } } } catch (IOException e) { e.printStackTrace(); } finally { try { if (bufferedReader != null) { bufferedReader.close(); } } catch (IOException e1) { e1.printStackTrace(); } bufferedReader = null; process = null; } return mac; } public static String getLinuxMACAddress() { String mac = null; BufferedReader bufferedReader = null; Process process = null; try { process = Runtime.getRuntime().exec("ifconfig eth0"); bufferedReader = new BufferedReader(new InputStreamReader(process .getInputStream())); String line = null; int index = -1; while ((line = bufferedReader.readLine()) != null) { String name = new String("硬件地址".getBytes("GBK"), "UTF-8"); index = line.toLowerCase().indexOf("硬件地址 "); if ((index != -1) || (line.toLowerCase().indexOf(name) != -1)) { mac = line.substring(index + 4).trim(); break; } } } catch (IOException e) { e.printStackTrace(); } finally { try { if (bufferedReader != null) { bufferedReader.close(); } } catch (IOException e1) { e1.printStackTrace(); } bufferedReader = null; process = null; } return mac; } public static String getWindowsMACAddress() { String mac = null; BufferedReader bufferedReader = null; Process process = null; try { process = Runtime.getRuntime().exec("ipconfig /all"); bufferedReader = new BufferedReader(new InputStreamReader(process .getInputStream())); String line = null; int index = -1; while ((line = bufferedReader.readLine()) != null) { index = line.indexOf("Physical Address"); String name = new String("物理地址".getBytes("GBK"), "UTF-8"); if ((index != -1) || (line.toLowerCase().indexOf(name) != -1) || (line.toLowerCase().indexOf("物理地址") != -1)) { index = line.indexOf(":"); if (index == -1) { break; } mac = line.substring(index + 1).trim(); break; } } } catch (IOException e) { e.printStackTrace(); } finally { try { if (bufferedReader != null) { bufferedReader.close(); } } catch (IOException e1) { e1.printStackTrace(); } bufferedReader = null; process = null; } return mac; } public static Set getWindowSetMACAddress() { String mac = null; BufferedReader bufferedReader = null; Process process = null; Set<String> nameSet = new HashSet(); try { process = Runtime.getRuntime().exec("ipconfig /all"); bufferedReader = new BufferedReader(new InputStreamReader(process .getInputStream())); String line = null; int index = -1; while ((line = bufferedReader.readLine()) != null) { index = line.indexOf("Physical Address"); String name = new String("物理地址".getBytes("GBK"), "UTF-8"); if ((index != -1) || (line.toLowerCase().indexOf(name) != -1) || (line.toLowerCase().indexOf("物理地址") != -1)) { index = line.indexOf(":"); if (index != -1) { mac = line.substring(index + 1).trim(); nameSet.add(mac); } } } } catch (IOException e) { e.printStackTrace(); } finally { try { if (bufferedReader != null) { bufferedReader.close(); } } catch (IOException e1) { e1.printStackTrace(); } bufferedReader = null; process = null; } return nameSet; } public static Set getLinuxSetMACAddress() { String mac = null; BufferedReader bufferedReader = null; Process process = null; Set<String> nameSet = new HashSet(); try { process = Runtime.getRuntime().exec("ifconfig eth0"); bufferedReader = new BufferedReader(new InputStreamReader(process .getInputStream())); String line = null; int index = -1; while ((line = bufferedReader.readLine()) != null) { String name = new String("硬件地址".getBytes("GBK"), "UTF-8"); index = line.toLowerCase().indexOf("硬件地址 "); if ((index != -1) || (line.toLowerCase().indexOf(name) != -1)) { mac = line.substring(index + 4).trim(); nameSet.add(mac); } } } catch (IOException e) { e.printStackTrace(); } finally { try { if (bufferedReader != null) { bufferedReader.close(); } } catch (IOException e1) { e1.printStackTrace(); } bufferedReader = null; process = null; } return nameSet; } public static Set getUnixSetMACAddress() { String mac = null; BufferedReader bufferedReader = null; Process process = null; Set<String> nameSet = new HashSet(); try { process = Runtime.getRuntime().exec("ifconfig eth0"); bufferedReader = new BufferedReader(new InputStreamReader(process .getInputStream())); String line = null; int index = -1; while ((line = bufferedReader.readLine()) != null) { index = line.toLowerCase().indexOf("hwaddr"); if (index != -1) { mac = line.substring(index + "hwaddr".length() + 1).trim(); nameSet.add(mac); } } } catch (IOException e) { e.printStackTrace(); } finally { try { if (bufferedReader != null) { bufferedReader.close(); } } catch (IOException e1) { e1.printStackTrace(); } bufferedReader = null; process = null; } return nameSet; } public static String getMACAddress() { String os = getOSName(); String mac = null; if (os.startsWith("windows")) { mac = getWindowsMACAddress(); } else if (os.startsWith("linux")) { mac = getLinuxMACAddress(); } else { mac = getUnixMACAddress(); } return mac; } public static Set getMacSetAddress() { String os = getOSName(); String mac = null; Set<String> nameSet = new HashSet(); if (os.startsWith("windows")) { nameSet = getWindowSetMACAddress(); } else if (os.startsWith("linux")) { nameSet = getLinuxSetMACAddress(); } else { nameSet = getUnixSetMACAddress(); } return nameSet; } public static void main(String[] argc) { String os = getOSName(); System.out.println(os); try { String aaa = "+i0Gc"; System.out.println(aaa.getBytes()); } catch (Exception localException) {} if (os.startsWith("windows")) { String mac = getWindowsMACAddress(); System.out.println("本地是windows:" + mac); } else if (os.startsWith("linux")) { String mac = getLinuxMACAddress(); System.out.println("本地是Linux系统,MAC地址是:" + mac); } else { String mac = getUnixMACAddress(); System.out.println("本地是Unix系统 MAC地址是:" + mac); } }}
阅读全文
0 0
- 获取常用系统的物理地址
- 获取有线网卡的物理地址
- 网卡真实的物理地址获取
- 获取sharepoint所在的物理地址
- android获取网卡的物理地址
- ORACLE获取数据的物理地址
- java执行系统命令,获取网卡物理地址
- linux命令行获取机器的物理地址并打印及Linux获取系统信息的常用命令
- C# 获取应用程序物理地址(运行DLL的物理地址)
- 获取物理地址
- servlet获取web工程的物理地址。
- PHP获取客户端的网卡mac物理地址
- 获取一些常用的系统目录
- 获取系统信息的常用SQL语句
- Delphi常用获取系统信息的函数
- 常用WMI获取系统信息的代码
- 获取JAVA系统的一些常用参数
- java获取网卡物理地址
- c语言练习 求素数 乘法表 判断闰年
- 基础练习 01字串
- POJ 2733 判断闰年
- 2017-12-09 PAT 赛前准备
- 装饰模式
- 获取常用系统的物理地址
- ubuntu 14.04+ GTX 1070+cuda 8.0 + cudnn 5.1+opencv3.0+caffe配置一步到位
- 【代码和思路都有】2017面试题:搜狐,彩虹宝石项链
- vim如何删除^M字符
- linux0.00内核剖析之1.系统级体系结构概览
- 【Codevs1041】Car的旅行路线 Floyd 简单几何 (9/1000)
- 框架学习之坑
- MySqlServer安装到连接全过程
- 每日练习|Day011