2.3 显示本机所有网卡硬件地址
(1)导入java.net包。
(2)用NetworkInterface::getNetworkInterfaces()方法枚举所有NetworkInterface对象。
(3)用循环处理所有的网卡对象,循环体中调用NetworkInterface对象的getHardwareAddress方法获取硬件地址,并进行所需的处理。
程序代码如下:
import java.net.*;
import java.io.*;
import java.util.*;
public class MyMac
{
public static void main(String[] args){
try{
//枚举所有网络接口设备
Enumeration interfaces=NetworkInterface.getNetworkInterfaces();
//循环处理每一个网络接口设备
while(interfaces.hasMoreElements()){
NetworkInterface face=(NetworkInterface)interfaces.nextElement();
//环回设备(lo)设备不处理
if(!face.getName().equals("lo")){
//显示当前网络接口设备显示名称
System.out.println("网卡显示名称:"+face.getDisplayName());
//显示当前设备内部名称
System.out.println("网卡设备名称:"+face.getName());
// 获取硬件地址
byte[] mac=face.getHardwareAddress();
System.out.println("硬件地址(MAC):"+bytes2mac(mac));
}
} }
|