私のコードは次のとおりです。
BufferedRead readLine() を使用すると、プログラム全体がフリーズします。問題は、行の終わりに達するまで readLine が行を返さないことです。サーバーは新しい行の文字値を送信しないため、閉じません。
では、どうすればこれを乗り越えることができますか? 私のコードを編集してください。
while (ok) {
BufferedReader re = new BufferedReader(new InputStreamReader(socket.getInputStream()));
aString = re.readLine();
...
}
注:これをプログラムで実行したいのですが、それを実行しているプロセスを強制終了したくはありません
UPDATE
StringBuilder re= new StringBuilder();
while ((c = r.read()) >= 0) {
re.append( (char)c ) ;
}
String result = re.toString();
byte[] contentInBytes = result.getBytes();
out.write(contentInBytes);
out.flush();
out.close();