67,513
社区成员
发帖
与我相关
我的任务
分享
package com.xuz.csdn.june19;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
public class NetworkInterfaceTest {
public static void main(String[] args) {
try {
InetAddress address = InetAddress.getLocalHost();
NetworkInterface netCard = NetworkInterface
.getByInetAddress(address);
byte[] addr = netCard.getHardwareAddress();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < addr.length; i++) {
if (addr[i] != 0) {
sb.append("-");
}
String string = Integer.toHexString(addr[i] & 0xff);
sb.append(string.length() == 1 ? "0" + string : string);
}
System.out.println(sb.toString().toUpperCase());
} catch (SocketException e) {
e.printStackTrace();
} catch (UnknownHostException e) {
e.printStackTrace();
}
// Enumeration<NetworkInterface> interfaces = null;
// try {
// interfaces = NetworkInterface.getNetworkInterfaces();
// } catch (SocketException e) {
// e.printStackTrace();
// }
// while (interfaces.hasMoreElements()) {
// final NetworkInterface ni = interfaces.nextElement();
// try {
// if (ni.isLoopback() || ni.isPointToPoint() || ni.isVirtual())
// continue;
// } catch (SocketException e) {
// e.printStackTrace();
// }
// byte[] macAddress = null;
// try {
// macAddress = ni.getHardwareAddress();
// } catch (SocketException e) {
// e.printStackTrace();
// }
// if (macAddress != null && macAddress.length > 0)
// try {
// System.out.println(new String(macAddress,"gbk"));
// } catch (UnsupportedEncodingException e) {
// e.printStackTrace();
// }
// }
}
}
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;
public class NetworkInfo {
private final static char[] HEX = "0123456789ABCDEF".toCharArray();
public static void main(String[] args) throws SocketException {
for(Enumeration<NetworkInterface> i = NetworkInterface.getNetworkInterfaces(); i.hasMoreElements(); ) {
NetworkInterface ni = i.nextElement();
System.out.println("NETWORK CARD NAME: " + ni.getDisplayName());
System.out.println("MAC: " + toMacString(ni.getHardwareAddress()));
for(Enumeration<InetAddress> j = ni.getInetAddresses(); j.hasMoreElements(); ) {
System.out.println(" " + j.nextElement());
}
}
}
private static String toMacString(byte[] bys) {
if(bys == null) {
return null;
}
char[] chs = new char[bys.length * 3 - 1];
for(int i = 0, k = 0; i < bys.length; i++) {
if(i > 0) {
chs[k++] = '-';
}
chs[k++] = HEX[(bys[i] >> 4) & 0xf];
chs[k++] = HEX[bys[i] & 0xf];
}
return new String(chs);
}
}
ip地址用:
InetAddress ipaddr = InetAddress.getLocalHost();
System.out.println( "Localhost ip: "+ipaddr.getHostAddress());
网卡信息用
ProcessBuilder pb = new ProcessBuilder("ifconfig");
然后处理下