У меня есть сервер и клиент, работающий на локальном сервере.BufferedReader продолжает ждать ответа
Я прочитал с сервера так:
br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
public static String readResponse() throws IOException{
String response = "";
String line;
while((line = br.readLine()) != ""){
System.out.println("s: " + line);
}
return response;
}
И я получаю ответ от сервера, но программа останавливается и никуда не уходит оттуда:
Please enter option number: 1
c: MSGGET
s: 200 OK
s: Go for it now. The future is promised to no one.
и он просто виснет здесь, когда предполагается продолжить.
Я также попытался:
while((line = br.readLine()) != null){
Он просто продолжает ждать. Есть ли что-нибудь на сервере, которое я должен изменить, чтобы сообщить клиенту, что я делаю передачу данных.
Пожалуйста, помогите! Спасибо!
Не ваша проблема (но я подумал, что это было сначала); это не то, как вы сравниваете 'String' (s). Попробуйте 'while (! (Line = br.readLine()). IsEmpty()) {' –
@ElliottFrisch Спасибо! Я попробовал. Имейте такую же проблему хотя! – Nazariy1995
Он будет блокироваться, пока он не получит что-то для чтения. –