Ich versuche, eine Adresse, die durch eine IP-Nummer oder einen Namen in String (dh localhost
oder 127.0.0.1
) angegeben ist, in ein InetAdress- Objekt zu konvertieren . Es gibt keinen Konstruktor, sondern statische Methoden, die eine InetAddress zurückgeben . Wenn ich also einen Hostnamen bekomme, ist das kein Problem, aber was ist, wenn ich die IP-Nummer bekomme? Es gibt eine Methode, die Byte [] erhält, aber ich bin mir nicht sicher, wie mir das helfen kann. Alle anderen Methoden erhalten den Hostnamen.
81
byte[] loopback = {0x7f,0x00,0x00,0x01};
Aus der API für InetAddress
quelle
ip = InetAddress.getByAddress(new byte[] { (byte)192, (byte)168, (byte)0, (byte)102} );
quelle
InetAddress.getByName funktioniert auch für die IP-Adresse.
Aus dem JavaDoc
quelle
Die API ist ziemlich einfach zu bedienen.
// Lookup the dns, if the ip exists. if (!ip.isEmpty()) { InetAddress inetAddress = InetAddress.getByName(ip); dns = inetAddress.getCanonicalHostName(); }
quelle
Dies ist ein Projekt zum Abrufen der IP-Adresse einer Website. Es ist nützlich und so einfach zu erstellen.
import java.net.InetAddress; import java.net.UnkownHostExceptiin; public class Main{ public static void main(String[]args){ try{ InetAddress addr = InetAddresd.getByName("www.yahoo.com"); System.out.println(addr.getHostAddress()); }catch(UnknownHostException e){ e.printStrackTrace(); } } }
quelle