我用socket接收服务器端发过来的byte[]代码如下
byte[] buf = new byte[2048];
int num = in.read(buf);
while (num != (-1)) {//是否读完所有数据
num = in.read(buf);//继续从网络中读取文件
}
为什么接收完之后就不动了也不提示接收完毕 也没有异常
------解决方案--------------------
应该要自定义结束字符
------解决方案--------------------
1、最开始就发送整个数据的大小,以此来判断是否接收完毕(HTTP 协议就是这样的)
2、使用自定义的结束字符
------解决方案--------------------
必须定义一个结束符,根据结束符进行结束判断
------解决方案--------------------
我是发socket.sendUrgentData(1)来判断客户端状态