Open In App

Convert a String to an InetAddress in Java

Last Updated : 05 Feb, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

InetAddress is one of the Java classes which is available in java.net package. The InetAddress class contains a lot of built-in methods for handling networking-related functions in Java. In our case we need to convert a String to an InetAddress means IP Address. Normally an IP Address format looks like this xxx.xxx.xxx.xxx here x indicates a range from 0 to 255, The IP Address have different classes. For reference, refer IP Addressing article.

Here in this article, First We need to take an IP Address as a String value. After that, by using InetAddress class we convert the String value to InetAddress by using Its methods. In our case we use InetAddress.getByName(ipAddressString) method (Inetaddress class in java). This method takes an IP Address in the form of a String value and returns the InetAddress object.

Conversion Flow:

  • First, take an IP Address as a String value.
  • 127.0.0.1 This is one of the IP Addresses that refer to your own local system or localhost.
  • Now provide this string value as an argument to the InetAddress.getByName() method.
  • After that print that value as output.

Example of a String to an InetAddress

Here we have taken one IP Address, which is the localhost address (127.0.0.1) this IP Address represents the localhost. After that, by using the InetAddress.getByName() method we can convert it into IP Address.

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();
        }
    }
}


Output

Input IP Address String: 127.0.0.1
Converted InetAddress: /127.0.0.1
Host Name: localhost
Host Address: 127.0.0.1

Explanation of the above Program:

  • Here First import the required package that is java.net.InetAddress this package is used for handling the Internet related functions or operations in Java.
  • After that we have imported the java.net.UnknownHostException which is used for handling the unknown host exceptions means if you give not existing IP Address then this error is handled by the UnknownHostException class.
  • Here we have taken localhost IP Address that is 127.0.0.1 which indicates your system as localhost as String value.
String ipAddressString = "127.0.0.1"

After that we have created an object for InetAddress class that is ipAddress. getByName() this method is available in InetAddress class after that we will print the result.

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

And here we have used getHostName() and getHostAddress() these methods are used for getting Host address and Host name by using the InetAddress class object you can observe in the above code.

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

Example 2:

In this example we have given wrong IP Address as a string value. The Error handling mechanism will handle this error. The try block is identify the error and the catch is used for catch the errors.

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());
        }
    }
}


Output:

Error IP

In the above code we have given Wrong IP Address for checking the error handling is working fine or not. While run this code we got an error Message. Because the given IP Address is in Wrong format.

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.



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads