关于br.readLine()

来源:6-2 综合练习---实现分析

peng1990

2016-05-03 10:14

在老师写的代码里面server端while((info=br.readLine())!=null),这句代码是可以执行的。
但是当我自己写的时候while((info=br.readLine())!=null)这句就一直阻断在这。查阅了资料,
br.readLine()这个方法是阻断的,只有收到'\n'或者'\r'才会返回。因此,我在我代码的
client端输出的最后加了'\n',server端就能收到结果。很奇怪,为什么老师的client端发送的
内容最后没有'\n'但是仍然发送成功了。。。。。


写回答 关注

1回答

  • peng1990
    2016-05-03 10:20:23

    找到原因了,老师在client端关闭了io流,这个时候br.readLine()会返回空。如果不关闭io流,br.readLine()会一直阻塞。。。。

Java Socket应用---通信是这样练成的

分享的是 Java 中的网络编程,使用Socket实现网络聊天通信

125005 学习 · 627 问题

查看课程

相似问题