首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

一个网络通信的有关问题

2012-02-26 
一个网络通信的问题inDatanewBufferedReader(newInputStreamReader(MySocket.getInputStream(),GB2312

一个网络通信的问题
inData   =new   BufferedReader(
                                                        new   InputStreamReader(
                                                                        MySocket.getInputStream(),   "GB2312 "));
String   SrvSendText;
SrvSendText   =   inData.readLine();                    
ChatText.setText( "SrvSendText:   "+SrvSendText+ "\n ");

连接是通的,如果注释SrvSendText   =   inData.readLine();   或断开连接,就可以运行下面一句ChatText.setText( "SrvSendText:   "+SrvSendText+ "\n ");否则都不运行下去

请问这是什么回事呢??
如果读到空的是不是也应该输出 "SrvSendText:   "呢,我在服务端也发了数据过来了,但也是如此

我搞了好久,知道的一定要帮帮啊,SOS   sos   SOS

[解决办法]
接收到的数据无换行符,readLine()阻塞.服务端数据后加 '\n '应该可以解决.
[解决办法]
public String readLine()
throws IOException读取一个文本行。通过下列字符之一即可认为某行已终止:换行 ( '\n ')、回车 ( '\r ') 或回车后直接跟着换行。

返回:
包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回 null

热点排行