我有一个 ByteArrayOutputStream 对象,我收到以下错误:
java.lang.ArrayIndexOutOfBoundsException at
java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:113)
我试图通过一次写入一个 250mb 的 byte[] 块来加载一个有几个演出的文件。
我可以看到字节的大小增加,一旦它达到长度 2147483647(int 的上限),它就会在以下行中爆炸:
stream.write(buf);
stream 是 ByteArrayOutputStream,buf 是我以 250mb 块写入流的内容。
我打算做
byte result[] = stream.toByteArray();
在最后。我可以尝试其他一些方法来支持大于 int 上限的字节数组大小吗?