【发布时间】:2015-09-27 20:55:50
【问题描述】:
我在服务器端有以下代码:
InputStream in = socket.getInputStream();
int x;
while(true) {
x = in.read();
if(x < 0) break;
System.out.print((char)x);
}
客户端已正确连接并向服务器发送一些字符串。但是 while 循环永远运行。如何检测何时到达输入流的末尾。
【问题讨论】:
-
你能告诉我们输出是什么吗?
-
x的类型是什么? -
@AmanArora 为什么要把它改成
x>0?这不会检测到结束,但会导致循环在第一个字节到达时停止 -
显示更多代码,例如您如何创建
in -
我怀疑这不是永远循环,而是阻塞
read()
标签: java sockets serversocket