2016-04-18 10 views
0

Ich habe ein Problem, wo ich die Clients IP vom Server nicht erhalten kann, um es in eine Variable zu speichern, dann in ein Wörterbuch. Ich habe versucht, getAddress() zu verwenden, aber es funktioniert nicht, es gibt eine Nachricht sagt "kann Symbol nicht finden".Wie bekomme ich die IP-Adresse des Clients vom Server?

try { 
     DatagramSocket IN_socket = new DatagramSocket(3000); 
     DatagramSocket OUT_socket = new DatagramSocket(8000); 
     IN_socket.setSoTimeout(0); 
     Inet4Address addrs = DatagramSocket.getAddress() ; 
     byte[] buffer = new byte[1024]; 
     DatagramPacket packet = new DatagramPacket(buffer, buffer.length); 
+0

"... und es gab mir immer einen Fehler." - Wirst du uns sagen, was der Fehler ist, oder uns einfach in der Schwebe halten? – azurefrog

+0

Bitte fügen Sie Ihre Stack-Trace hinzu. –

+0

Mögliches Duplikat von [Was bedeutet ein Kompilierfehler "Kann kein Symbol finden"?] (Http://stackoverflow.com/questions/25706216/what-does-a-cannot-find-symbol-compilation-error-mean) – azurefrog

Antwort

0

Objekt java.net.DatagramSocket keine getAddress() Methode hat, stattdessen gibt es getInetAddress():

öffentlichen InetAddress getInetAddress()

Liefert die Adresse, an die diese Buchse angeschlossen ist. Gibt null zurück, wenn der Socket nicht verbunden ist. Wenn der Socket vor dem Schließen angeschlossen wurde, dann wird diese Methode weiterhin die verbundene Adresse zurückgeben, nachdem der Socket geschlossen ist.

Rückgabe: Die Adresse, mit der diese Buchse verbunden ist.

Verwandte Themen