当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java String转InetAddress用法及代码示例


InetAddress是可用的 Java 类之一java.net包。 InetAddress 类包含许多用于处理 Java 中的 networking-related 函数的内置方法。在我们的例子中,我们需要将字符串转换为 InetAddress 表示 IP 地址。通常 IP 地址格式如下所示xxx.xxx.xxx.xxx这里x表示从0到255的范围,IP地址有不同的类别。作为参考,请参阅IP 寻址文章。

在本文中,首先我们需要将 IP 地址作为字符串值。之后,通过使用 InetAddress 类,我们使用其方法将 String 值转换为 InetAddress。在我们的例子中,我们使用InetAddress.getByName(ipAddressString)方法 (java.net.InetAddress)。此方法采用字符串值形式的 IP 地址并返回 InetAddress 对象。

转换流程:

  • 首先,将 IP 地址作为字符串值。
  • 127.0.0.1这是指您自己的本地系统或的 IP 地址之一本地主机.
  • 现在提供这个字符串值作为参数InetAddress.getByName()方法。
  • 之后将该值打印为输出。

InetAddress 的字符串示例

这里我们取了一个IP地址,它是本地主机地址(127.0.0.1) 该 IP 地址代表本地主机。之后,通过使用InetAddress.getByName()方法我们可以将其转换为IP地址。

Java


import java.net.InetAddress; 
import java.net.UnknownHostException; 
  
public class InetAddressExampleOne { 
    public static void main(String[] args) { 
        
        // Input string representing an IP address 
        String ipAddressString = "127.0.0.1"; 
  
        try { 
            // Convert the string to InetAddress 
            InetAddress ipAddress = InetAddress.getByName(ipAddressString); 
  
            // Display the results 
            System.out.println("Input IP Address String: " + ipAddressString); 
            System.out.println("Converted InetAddress: " + ipAddress); 
            System.out.println("Host Name: " + ipAddress.getHostName()); 
            System.out.println("Host Address: " + ipAddress.getHostAddress()); 
            
        } catch (UnknownHostException e) { 
            // Handle UnknownHostException 
            e.printStackTrace(); 
        } 
    } 
} 
输出
Input IP Address String: 127.0.0.1
Converted InetAddress: /127.0.0.1
Host Name: localhost
Host Address: 127.0.0.1

上述程序的解释:

  • 这里首先导入需要的包即java.net.InetAddress该包用于处理Java中与Internet相关的函数或操作。
  • 之后我们导入了java.net.UnknownHostException用于处理未知主机异常意味着如果您提供的 IP 地址不存在,则此错误将由UnknownHostException类。
  • 这里我们采用了 localhost IP 地址,即127.0.0.1这表明您的系统作为字符串值的本地主机。
String ipAddressString = "127.0.0.1"

之后我们创建了一个对象InetAddress类即IP地址。 getByName()此方法在 InetAddress 类中可用,之后我们将打印结果。

System.out.println("Input IP Address String: " + ipAddressString);
System.out.println("Converted InetAddress: " + ipAddress);

在这里我们使用了getHostName()getHostAddress()这些方法用于通过使用 InetAddress 类对象来获取主机地址和主机名,您可以在上面的代码中观察到。

System.out.println("Host Name: " + ipAddress.getHostName());
System.out.println("Host Address: " + ipAddress.getHostAddress());

示例 2:

在此示例中,我们将错误的 IP 地址作为字符串值给出。错误处理机制将处理该错误。 try块用于识别错误,catch用于捕获错误。

Java


import java.net.InetAddress; 
import java.net.UnknownHostException; 
  
public class InetAddressExampleTwo { 
    public static void main(String[] args) 
    { 
  
        // Input string representing non existing an IP address 
        String ipAddressString = "327.0.0.1"; 
  
        try { 
            // Convert the string to InetAddress 
            InetAddress ipAddress = InetAddress.getByName(ipAddressString); 
  
            // Display the results 
            System.out.println("\n\tInput IP Address String: " + ipAddressString); 
            System.out.println("\tConverted InetAddress: "+ ipAddress); 
            System.out.println("\tHost Name: " + ipAddress.getHostName()); 
            System.out.println("\tHost Address: "+ ipAddress.getHostAddress()); 
        } 
        catch (UnknownHostException e) { 
            // Handle UnknownHostException 
            System.err.println("Error: " + e.getMessage()); 
        } 
    } 
}

输出:

Error IP

在上面的代码中,我们给出了错误的 IP 地址来检查错误处理是否正常工作。运行此代码时,我们收到一条错误消息。因为给定的 IP 地址格式错误。

327.0.0.1 this IP Address is not existing or Wrong IP Address. So, the Java Code can be able to Handle this, Error.



相关用法


注:本文由纯净天空筛选整理自eswarbe06sp大神的英文原创作品 Convert a String to an InetAddress in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。