Ich habe ein wenig Probleme beim Senden und Empfangen von Zeichenfolgen von Client zu Server. Angenommen, ich habe die Steckdosen richtig eingerichtet. Dies ist, was ich bin mit Server-Seite senden/empfangen:Fehler beim Senden/Empfangen von Zeichenfolgen für Client/Server
fromClient = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
toClient = new BufferedWriter(new OutputStreamWriter(clientSocket.getOutputStream()));
String clientInput;
clientInput = fromClient.readLine();
ist, wie mein Server Eingaben von dem Client empfängt.
Client-Seite gleicher Deal:
toServer = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
fromServer = new BufferedReader(new InputStreamReader(socket.getInputStream()));
inputLine = bufferedReader.readLine(); //inputLine reads from the console
toServer.write(inputLine);
ich eine Nachricht an den Sever senden kann, und es wird mich empfangen, aber wenn ich dieses Bit für den Client Kommentar-, um eine Antwort vom Server zu erhalten:
// serverInput = fromServer.readLine();
//
// System.out.println(serverInput);
Es hängt und die Server-Seite wird nicht die erste Nachricht gesendet erhalten. Ich habe keine Ahnung was falsch ist und ich möchte nur eine Antwort vom Server bekommen. Jede Hilfe wird geschätzt. Danke
Haben Sie 'toClient.write (clientInput)' auf der Serverseite aufgerufen? –
nach clientInput = fromClient.readLine();, ich drucke clientInput und es wird es drucken. Aber wenn ich "toClient.write" verwende ("bitte"); " nach und kommentieren Sie das Bit auf der Client-Seite aus, es wird hängen und nicht einmal die ursprüngliche Nachricht – ricefieldboy
erhalten, vergiss .... Ich fand es heraus. Ich musste im Write-Parameter ein + '\ n' hinzufügen und danach einen Flush machen. – ricefieldboy