[转载]Java post发送和接收大数据量的方法
(2016-09-02 16:54:32)
标签:
转载 |
原文地址:Java post发送和接收大数据量的方法 作者:softsong
post 发送和接收大数据量的方法:
DataOutputStream 的buffer存在8K限制
客户端发送:
OutputStream os = con.getOutputStream();
DataOutputStream dos = new DataOutputStream(os);
dos.writeInt(100);// client version
dos.writeInt(bytes.length);
int offset =
0;
int LEN =
1024;
while
(bytes.length - offset > LEN) {
dos.write(bytes, offset, LEN);
offset +=
LEN;
}
dos.write(bytes, offset, bytes.length - offset);
dos.flush();
dos.close();
服务器端接收:
int len = in.readInt();
debugInfo("data len:" + len);
if (len
< 0) {
logger.error("readBytes error. len:" + len);
return
null;
}
if (len ==
0) {
return
null;
}
byte[] data
= new byte[len];
int index =
0;
int LEN =
1024;
if (len
< LEN) {
in.read(data);
} else
{
int length =
in.read(data, index, LEN);
while
(length > 0) {
DataOutputStream 的buffer存在8K限制
客户端发送:
OutputStream os = con.getOutputStream();
服务器端接收: