所以,虽然我现在明白为什么连接到socket的Outputstream需要在立即发送数据时刷新,但我仍然不明白为什么我需要在String的末尾添加换行符。
这有效:
// writer is a PrintWriter
writer.println("Hello World!");
这不是:
Writer.print("Hello World!");
writer.flush;
答案 0 :(得分:5)
您应该更准确地定义工作并且无法正常工作。客户端和服务器之间的协议是什么?你期望发生什么,你观察到了什么?
我怀疑服务器只是在做任何事情之前等待换行符出现在其输入中。如果是这种情况,那么当然在发送换行符之前在客户端刷新作者将无济于事。
答案 1 :(得分:2)
如果按照上一个问题使用BufferedReaders readLine方法读取,readLine将无法完成,除非它找到换行符。