Deflater:是否有可能克隆状态(或回滚)?

时间:2013-08-17 23:21:14

标签: java deflate

假设我使用Deflater来压缩字节流,并且在某些时间间隔我可以选择使用两个不同的字节数组(相同信息的两个替代表示)来提供它,这样我就可以了可以选择最可压缩的。理想情况下,我希望能够克隆“实时”deflater的状态,以便我可以使用数组为每个实例提供信息,检查结果并丢弃不需要的实例。 或者,我想标记当前状态(一种保存点),以便在使用setInput() + deflate()进行馈送和压缩之后,我可以回滚/重置为该状态以尝试使用不同的数据。

看看API,这在我看来相当不可能......甚至不重新实现Deflater(至少如果有人想利用内部本机实现)。我对吗?任何想法或经验?

1 个答案:

答案 0 :(得分:1)

zlib的Java接口似乎没有提供zlib的deflateCopy()操作。继承的克隆操作可能已正确实现并执行deflateCopy(),但我不知道。