java socket 字节数组_通过java socket发送一个大字节数组

我有一个长度超过1200000的大字节数组 . 我想通过DataOutputStream发送它,并通过DataInputStream在客户端接收 .

我正在使用代码

out.write(outData)

in.readFully(inData)

out是DataOutputStream,在DataInputStream中,outData是我想要发送的字节数组 . 当我运行程序时,如果字节数组的长度大约是120000,则可以发送数组,但是当长度变为1200000时,服务器无法接收数组 . 我应该将大阵列分成几个小阵列吗?

我在下面尝试过这样的代码,但它仍然无效 .

out.writeInt(outData.length);

int start = 0;

int len = 0;

int count = outData.length;

while (count > 0) {

if (count < 4096)

len = count;

else len = 4096;

out.write(outData, start, len);

start += len;

count -= len;

}

int length=in.readInt();

byte[] inData=new byte[length];

in.readFully(inData);

有人可以帮忙吗?谢谢 .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值