在 Windows 和 Linux 机器中获取系统 IP 地址的Java程序
IP 地址: Internet 协议地址是分配给连接到使用 Internet 协议进行通信的计算机网络的每个设备的数字标签。
使用的软件包:
- io(输入输出) :这个包通过数据流、序列化和文件系统提供系统输入和输出。
- net (network) :这个包提供了用于实现网络应用程序的类。
- util(实用程序) :它包含集合框架、遗留集合类、事件模型、日期和时间设施、国际化和杂项实用程序类
使用的方法:
1. getInetAddresses()
句法:
public Enumeration getInetAddresses()
返回类型:它返回 InetAddress 的枚举。
2. getInterfaceAddresses()
句法:
public List getInterfaceAddresses()
返回类型:它返回一个Java.net.InterfaceAddress 实例列表。
下面是问题陈述的实现:
Java
// Java Program to Get System IP Address
// in Windows and Linux Machine
import static java.lang.System.out;
import java.io.*;
import java.net.*;
import java.util.*;
public class gfg {
public static void main(String args[]) // main method
throws SocketException
{
// fetching network interface
Enumeration nets
= NetworkInterface.getNetworkInterfaces();
for (NetworkInterface netint :
Collections.list(nets))
displayInterfaceInformation(netint);
}
// Display Internet Information method
static void
displayInterfaceInformation(NetworkInterface netint)
throws SocketException
{
out.printf("Display name: %s\n",
netint.getDisplayName());
out.printf("Name: %s\n", netint.getName());
Enumeration inetAddresses
= netint.getInetAddresses();
// Output System IP
for (InetAddress inetAddress :
Collections.list(inetAddresses)) {
out.printf("System IP: %s\n", inetAddress);
}
out.printf("\n");
}
}
输出
Display name: eth0
Name: eth0
Display name: lo
Name: lo
System IP: /127.0.0.1
Windows 中的输出:
Linux 中的输出: