Я использую метод BufferedReader.readLine()
для чтения ответа с удаленного сервера (который написан на C, и у меня нет доступа к исходному коду).
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String line;
while((line = br.readLine())!=null){
[...]
}
Но он всегда блокируется в последнийлиния, пока не истечет время ожидания.Поэтому я использовал следующий код:
int b;
while(true){
b = in.read;
[...]
}
и обнаружил, что последний прочитанный байт имеет целочисленное значение 13, и я думаю, что это возврат каретки, верно?
почему блоки readLine
метод?Как сервер обычно сообщает о достижении конца потока?Спасибо.