关于Java Socket的问题

为什么客户端显示不了服务器的消息“欢迎”?... 为什么客户端显示不了服务器的消息“欢迎”? 展开
 我来答
青鸟中关村专家
2016-06-16 · 知道合伙人软件行家
青鸟中关村专家
知道合伙人软件行家
采纳数:1734 获赞数:8440
就职于北大青鸟中关村,自2004年踏入北大青鸟这个行业,已经有11年工作经验和8年的培训经验,寓教于乐

向TA提问 私信TA
展开全部
这个原因主要有两方面:
(1)客户端接收消息时使用的是readLine()方法,而服务器端发送消息时使用的是write方法,这样的话,接收方是有换行标记的,而发送方法没有,容易发生无法获取数据,所以,可以在服务器端添加换行标记,代码如下:
writer.write("欢迎" + "\n");
(2)客户端接收方在读取信息时,已经使用了bf.readLine(),那么该方法执行后就会把服务器端的所有信息一下读取完毕,而当while时,读取的内容必然为空,所以可以把while循环取消,代码如下:
String content = reader.readLine();
// while (reader.readLine() != null) {//去掉注释的两行代码即可
System.out.println(content);
// }
优质内容提供者andy
2016-06-16 · TA获得超过1561个赞
知道大有可为答主
回答量:2551
采纳率:72%
帮助的人:749万
展开全部
osw.flush()写出去之后加这句话试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式