Java socket编程客户端读取数据不完整_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java socket编程客户端读取数据不完整

Java socket编程客户端读取数据不完整

 2013/10/29 3:58:07  listen-raining  程序员俱乐部  我要评论(0)
  • 摘要:今天在用javasocket读取服务器端发送的数据时,发现只能读取服务器端发送的部分数据,无法完整读取服务器端的数据。数据大概有7W多个字节。原代码如下:privateStringgetSocketDCCReceiveCCA()throwsIOException{InputStreamstream=socket.getInputStream();byte[]rb=newbyte[8];socket.getInputStream().read(rb);//前8个字节是整个xml数据的长度
  • 标签:Java 数据 客户 客户端 编程 socket
今天在用java socket读取服务器端发送的数据时,发现只能读取服务器端发送的部分数据,无法完整读取服务器端的数据。数据大概有7W多个字节。

原代码如下:
    private String getSocketDCCReceiveCCA() throws IOException{
InputStream stream=socket.getInputStream();
byte[] rb = new byte[8];
socket.getInputStream().read(rb);
                  //前8个字节是整个xml数据的长度(十六进制)
int rLen =b2i(rb);
Log.info("转换后的rLen长度为:"+rLen);
byte[] read = new byte[rLen - 8];
                  //一次性读取数据的长度(这里有7W多个字节)
socket.getInputStream().read(read);
                  //对数据进行编码转换
String re = new String(CheckUnicodeString(read), "UTF-8");
                  return re;
         }


请各位帮忙看看,为什么服务器端返回的字符串有7W多个,而我这边只接收到几千个字节。
上一篇: XML解析 下一篇: PropertiesHelper
发表评论
用户名: 匿名