在SOcket中有个奇怪的现象,如果放到socket的字节大于5000,socket会分两次发送,
在读取的时候就算new byte[30000],也只能读取4380字节,其余的将不会读取,所以解决方法就是分次读取.
在读取的时候就算new byte[30000],也只能读取4380字节,其余的将不会读取,所以解决方法就是分次读取.
使用while(){}读取返回值为-1的时候停止.可以按照下面的例子读取socket中的内容
String sign1 ="";
for(int i=0;i>-1;){
byte[] bs=new byte[30000];
i=req.getInputStream().read(bs);
System.err.println("cout-----"+i);
if(i==-1){
break;
}
System.err.println(new String(bs));
sign1=sign1+new String(bs,0,i);
}