【发布时间】:2016-02-04 03:12:12
【问题描述】:
我有一个服务器和客户端在本地服务器上运行。
我是这样从服务器读取的:
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 谢谢!我尝试过这个。有同样的问题!
-
它会阻塞,直到收到要读取的内容。
标签: java client client-server bufferedreader