マルチスレッド チャット クライアント サーバー アプリケーションを作成しています。サーバー接続では、PrintWriter の println(String s) メソッドを使用して、クライアントへの応答を書き込みます。
PrintWriter out;
String msg = in.readLine();
String response = "";
if (msg.startsWith("nick: ") {
response = protocol.authenticate(msg); //returns a String that says "welcome " + nick
//if there are messages pending for the author who logged in add them to the response String
response+="\r\n"+textmsg;
} else { ... }
out.println(response);
BufferedReader readLine() メソッドを使用してサーバーから読み取るクライアントを実行すると、ウェルカム メッセージは表示されますが、クライアントの保留中のメッセージは表示されません。
response+=textmsg;
\r\n を使用しているためだと思いますが、これら 2 つのメッセージの間に新しい行を出力する必要があります。私は何をすべきか?
回答を受け入れた後に編集します。最終的に、OutputStream と InputStream を使用することを選択したので、\r\n を使用しても、必要なあらゆる種類の文字列を送信できます。