package pkg;
import java.io.*;
/**
* 獲取MAC地址【轉(zhuǎn)載】
*
*/
public class GetMac {
// 通過IP獲取網(wǎng)卡地址
private String getMacAddressIP(String remotePcIP) {
String str = "";
String macAddress = "";
try {
Process pp = Runtime.getRuntime().exec("nbtstat -A " + remotePcIP);
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) {
macAddress = str.substring(
str.indexOf("MAC Address") + 14, str.length());
break;
}
}
}
} catch (IOException ex) {
}
return macAddress;
}
// 通過機(jī)器名獲取網(wǎng)卡地址
private String getMacAddressName(String remotePcIP) {
String str = "";
String macAddress = "";
try {
Process pp = Runtime.getRuntime().exec("nbtstat -a " + remotePcIP);
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) {
macAddress = str.substring(
str.indexOf("MAC Address") + 14, str.length());
break;
}
}
}
} catch (IOException ex) {
}
return macAddress;
}
public static void main(String[] args) {
GetMac getmac;
getmac = new GetMac();
String mac = "";
mac = getmac.getMacAddressIP("192.168.0.100");// YOUR IP
System.out.println(mac);
mac = getmac.getMacAddressName("R61007");// YOUR HOST-NAME
System.out.println(mac);
}
}
獲取ip地址的方法有二:
1.通過HttpServletRequest對(duì)象獲取,可以在HttpServlet中獲取,也可以在jsp中獲取
a.在HttpServlet中獲取
request.getRemoteAddr();
request.getRemoteHost();
b.在jsp中獲取
在body中寫下如下代碼
<%
String a = request.getRemoteAddr();
String b = request.getRemoteHost();
String c = java.net.InetAddress.getLocalHost().getHostAddress();
%>
<script type="text/javascript">
var sys = ${it};
b = "<%=a%>";
</script>
2.不通過中間環(huán)節(jié)獲取
String ip = java.net.InetAddress.getLocalHost().getHostAddress();
柳德才
13691193654
18942949207
QQ:422157370
liudecai_zan@126.com湖北-武漢-江夏-廟山