java获取本地ip地址怎么操作
推荐
在线提问>>
Java获取本地IP地址的操作可以通过以下几种方式实现:
1. 使用InetAddress类:使用InetAddress类的getLocalHost()方法可以获取本地主机的IP地址。示例代码如下:
```java
import java.net.InetAddress;
import java.net.UnknownHostException;
public class GetLocalIPAddress {
public static void main(String[] args) {
try {
InetAddress localHost = InetAddress.getLocalHost();
String ipAddress = localHost.getHostAddress();
System.out.println("本地IP地址:" + ipAddress);
} catch (UnknownHostException e) {
e.printStackTrace();
}
}
```
2. 使用NetworkInterface类:通过NetworkInterface类可以获取本地网络接口的信息,包括IP地址。示例代码如下:
```java
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;
public class GetLocalIPAddress {
public static void main(String[] args) {
try {
Enumeration
while (interfaces.hasMoreElements()) {
NetworkInterface networkInterface = interfaces.nextElement();
Enumeration
while (addresses.hasMoreElements()) {
InetAddress address = addresses.nextElement();
if (!address.isLoopbackAddress() && address.isSiteLocalAddress()) {
String ipAddress = address.getHostAddress();
System.out.println("本地IP地址:" + ipAddress);
}
}
}
} catch (SocketException e) {
e.printStackTrace();
}
}
```
3. 使用System类:通过System类的getProperty()方法获取系统属性中的"java.net.preferIPv4Stack"和"java.net.preferIPv6Addresses"属性值,可以获取本地IPv4和IPv6地址。示例代码如下:
```java
public class GetLocalIPAddress {
public static void main(String[] args) {
String ipv4Address = System.getProperty("java.net.preferIPv4Stack");
String ipv6Address = System.getProperty("java.net.preferIPv6Addresses");
System.out.println("本地IPv4地址:" + ipv4Address);
System.out.println("本地IPv6地址:" + ipv6Address);
}
```
以上是三种常用的获取本地IP地址的方式,你可以根据具体需求选择适合的方法来获取本地IP地址。