當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。