日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java servlet 获取mac地址_Java开发网 - 请教大家几个关于servlet取ip和mac地址的问题~~!...

發布時間:2025/3/12 java 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java servlet 获取mac地址_Java开发网 - 请教大家几个关于servlet取ip和mac地址的问题~~!... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

//Java獲得CPU序列號和網卡Mac地址

/*

利用Runtime call操作系統的命令,具體的命令取決于不同的操作系統,注意不要調用Runtime.getRuntime().exec(String)接口,要用Runtime.getRuntime().exec(String[])這個接口,不然復雜命令的執行會有問題。例子如下(拿cpu個數,其他類似):

定義命令:

WindowsCmd ="cmd.exe /c echo %NUMBER_OF_PROCESSORS%";//windows的特殊

SolarisCmd = {"/bin/sh", "-c", "/usr/sbin/psrinfo | wc -l"};

AIXCmd = {"/bin/sh", "-c", "/usr/sbin/lsdev -Cc processor | wc -l"};

HPUXCmd = {"/bin/sh", "-c", "echo \"map\" | /usr/sbin/cstm | grep CPU | wc -l "};

LinuxCmd = {"/bin/sh", "-c", "cat /proc/cpuinfo | grep ^process | wc -l"};

然后判斷系統:

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

根據不同的操作系統call不同的命令。

*/

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.io.LineNumberReader;

public class GetMACAddress

{

public String getMACAddress(String ipAddress)

{

String str = "",strMAC = "",macAddress = "";

try

{

Process pp = Runtime.getRuntime().exec("nbtstat -a " + ipAddress);

InputStreamReader ir = new InputStreamReader(pp.getInputStream());

LineNumberReader input = new LineNumberReader(ir);

for(int i = 1;i < 100;i++)

{

str = input.readLine();

if(str != null)

{

if(str.indexOf("MAC Address") > 1)

{

strMAC = str.substring(str.indexOf("MAC Address") + 14,str.length());

break;

}

}

}

}

catch(IOException ex)

{

return "Can't Get MAC Address!";

}

//

if(strMAC.length() < 17)

{

return "Error!";

}

macAddress = strMAC.substring(0,2) + ":"

+ strMAC.substring(3,5) + ":"

+ strMAC.substring(6,8) + ":"

+ strMAC.substring(9,11) + ":"

+ strMAC.substring(12,14) + ":"

+ strMAC.substring(15,17);

//

return macAddress;

}

public static void main(String[] args)

{

GetMACAddress getMACAddress = new GetMACAddress();

System.out.println(getMACAddress.getMACAddress("172.18.8.225"));

try

{

java.lang.Process proc = Runtime.getRuntime().exec("ipconfig /all");

InputStream istr = proc.getInputStream();

byte[] data = new byte[1024];

istr.read(data);

String netdata = new String(data);

System.out.println("Your Mac Address=" + procAll(netdata));

}

catch(IOException e)

{

System.out.println("error=" + e);

}

}

public static String procAll(String str)

{

return procStringEnd(procFirstMac(procAddress(str)));

}

public static String procAddress(String str)

{

int indexof = str.indexOf("Physical Address");

if(indexof > 0)

{

return str.substring(indexof,str.length());

}

return str;

}

public static String procFirstMac(String str)

{

int indexof = str.indexOf(":");

if(indexof > 0)

{

return str.substring(indexof + 1,str.length()).trim();

}

return str;

}

public static String procStringEnd(String str)

{

int indexof = str.indexOf("\r");

if(indexof > 0)

{

return str.substring(0,indexof).trim();

}

return str;

}

}

總結

以上是生活随笔為你收集整理的java servlet 获取mac地址_Java开发网 - 请教大家几个关于servlet取ip和mac地址的问题~~!...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。