example ejemplo java ip

ejemplo - Creando objeto InetAddress en Java



inetaddress java ejemplo (5)

Estoy tratando de convertir una dirección especificada por un número de IP o un nombre, tanto en String (es decir, localhost o 127.0.0.1 ), en un objeto InetAdress . No hay constructor, sino métodos estáticos que devuelven una dirección InetAddress . Entonces, si recibo un nombre de host, no es un problema, pero ¿qué sucede si obtengo el número de IP? Hay un método que obtiene byte [], pero no estoy seguro de cómo me puede ayudar. Todos los otros métodos obtienen el nombre de host.

Documentación de la API InetAddress


Debería poder utilizar getByName o getByAddress .

El nombre de host puede ser un nombre de máquina, como "java.sun.com", o una representación textual de su dirección IP

InetAddress addr = InetAddress.getByName("127.0.0.1");

El método que toma una matriz de bytes se puede usar así:

byte[] ipAddr = new byte[]{127, 0, 0, 1}; InetAddress addr = InetAddress.getByAddress(ipAddr);


Desde la API para InetAddress

El nombre de host puede ser un nombre de máquina, como "java.sun.com", o una representación textual de su dirección IP. Si se proporciona una dirección IP literal, solo se comprueba la validez del formato de dirección.


El api es bastante fácil de usar.

// Lookup the dns, if the ip exists. if (!ip.isEmpty()) { InetAddress inetAddress = InetAddress.getByName(ip); dns = inetAddress.getCanonicalHostName(); }


InetAddress.getByName también funciona para la dirección IP.

Desde el JavaDoc

El nombre de host puede ser un nombre de máquina, como "java.sun.com", o una representación textual de su dirección IP. Si se proporciona una dirección IP literal, solo se comprueba la validez del formato de dirección.


ip = InetAddress.getByAddress(new byte[] { (byte)192, (byte)168, (byte)0, (byte)102} );