Java 获取电脑和手机 IP 和 MAC 地址代码示例
Java 获取电脑和手机 IP 和 MAC 地址代码示例
本文将提供 Java 代码示例,用于获取电脑和手机的 IP 地址和 MAC 地址。
获取电脑的 IP 和 MAC 地址
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
public class GetLocalInfo {
public static void main(String[] args) {
try {
InetAddress ip = InetAddress.getLocalHost();
System.out.println('IP地址:' + ip.getHostAddress());
NetworkInterface network = NetworkInterface.getByInetAddress(ip);
byte[] mac = network.getHardwareAddress();
System.out.print('MAC地址:');
StringBuilder sb = new StringBuilder();
for (int i = 0; i < mac.length; i++) {
sb.append(String.format('%02X%s', mac[i], (i < mac.length - 1) ? '-' : ''));
}
System.out.println(sb.toString());
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (SocketException e) {
e.printStackTrace();
}
}
}
获取手机的 IP 和 MAC 地址
import android.content.Context;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
public class GetLocalInfo {
public static void main(String[] args) {
WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
String ip = intIP2StringIP(wifiInfo.getIpAddress());
String mac = wifiInfo.getMacAddress();
System.out.println('IP地址:' + ip);
System.out.println('MAC地址:' + mac);
}
public static String intIP2StringIP(int ip) {
return (ip & 0xFF) + '.' +
((ip >> 8) & 0xFF) + '.' +
((ip >> 16) & 0xFF) + '.' +
((ip >> 24) & 0xFF);
}
}
说明:
- 以上代码示例仅供参考,实际使用时可能需要根据具体情况进行调整。
- 获取手机的 IP 和 MAC 地址需要在 Android 平台上运行,并且需要在 AndroidManifest.xml 中添加相应的权限。
- 获取 MAC 地址可能受到系统权限限制,需要在代码中进行必要的判断和处理。
- 代码中使用
StringBuilder来拼接字符串,可以提高效率。 - 代码中使用
String.format来格式化字符串,可以使代码更加简洁易读。
希望以上代码示例能够帮助您快速获取电脑和手机的 IP 和 MAC 地址。
原文地址: http://www.cveoy.top/t/topic/mLIH 著作权归作者所有。请勿转载和采集!