我已经阅读了类似的网页,说明为什么会发生这种情况,但其中没有一个实际上已经解释了如何解决这个问题。
我的程序正在将字节数组转换为.wav文件,字节数组中有大约200万个值。
exec
答案 0 :(得分:0)
调用readLimit
时使用较大的mark()
。如有必要,可以相应地增加传递给BufferedInputStream
构造函数的缓冲区大小。默认值是未记录的,但目前为8192。
然而,在您的情况下,BufferedInputStream
周围的ByteArrayInputStream
完全没有意义,应该删除。 ByteArrayInputStreams
已标记,可以支持任意数量的重置。