socket 发送字节如何判断接收完毕我用socket接收服务器端发过来的byte[]代码如下byte[]bufnewbyte[2048]
socket 发送字节如何判断接收完毕
我用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)来判断客户端状态
