所以我有一个输入流,我从中读取一个较小的固定大小缓冲区,我试图在 Runnable 类中放气。
randomClass implements Runnable {
public void run() {
...
byte[] output = new Byte[FIXED];
Deflater deflater = new Deflater();
deflater.setInput(uncompressed);
deflater.setLevel(Deflater.DEFLATED);
int length = deflater.deflate(output);
...
}
}
我遇到的问题是长度总是返回 0,这意味着根据文档我需要更多输入?但是,我检查了未压缩的不是空的。如何从输出中获取字节?
此外,我相信我应该只在最后一个块调用 deflater.finish() 。它是否正确?