Hi, ich möchte einen Echo Client und Server erstellen. Aber leider funktioniert es nicht so wie es sollte.
Beim Client mach ich folgendes:
Beim Server :
Beim Client mach ich folgendes:
Java:
soc = new Socket(tServer.getText(), 7); // Socket zum Server hin erzeugen
String antwort="";
try {
aus = new PrintWriter(soc.getOutputStream()); // Mit PrintWriter in den OutputStream die Nachricht schreiben
aus.println(tNachricht.getText());
in = new BufferedReader(new InputStreamReader(soc.getInputStream()));// Antwort von Server empfangen
while(in.readLine()!=null){
antwort= in.readLine(); // Antwort dem String antwort zuweisen.
}
tAntwort.setText(antwort); //Antwort in der GUI ausgeben.
} catch (IOException ex) {
System.err.println(ex);
}
try {
soc.close(); //Socket schließen
} catch (IOException ex) {
}
Beim Server :
Java:
serversoc= new ServerSocket(7);
try {
while(true) // Endlosschleife
{
System.out.println("Warte auf Benutzer auf Port 7...");
soc = serversoc.accept(); // Ein Socket wird geöffnet, Serversocket bleibt bestehen.
System.out.println("Verbindung hergestellt");
ein = new BufferedReader(new InputStreamReader(soc.getInputStream())); // Eingang auslesen
aus = new PrintWriter(soc.getOutputStream()); // schreibe einen ausgehenden Stream mit dem Datum
// while(ein.readLine()!=null)
// {
aus.println(ein.readLine());
// } // Eingang in Ausgang schreiben.
aus.close();
ein.close();
soc.close();
}
}
catch(IOException e)
{
serversoc.close();
System.err.println(e);}
Zuletzt bearbeitet von einem Moderator: