java Deflater:是否可以克隆状态(或回滚)?
假设我使用Deflater压缩一个字节流,每隔一段时间,我可以选择向它提供两个不同的字节数组(相同信息的两个可选表示形式),以便选择最可压缩的一个。理想情况下,我希望能够克隆“活动”平减器的状态,以便为每个实例提供一个数组,检查结果,并丢弃不需要的一个。
或者,我想标记当前状态(某种程度上是保存点),这样,在使用setInput()
+deflate()
进行馈送和压缩之后,我可以回滚/重置到该状态以尝试使用不同的数据
看看API,在我看来这是不可能的。。。甚至也不需要重新实现Deflater
(至少如果希望利用内部本机实现的话)。我说得对吗?有什么想法或经验吗
# 1 楼答案
似乎zlib的Java接口没有提供zlib的
deflateCopy()
操作。继承的克隆操作可能得到了正确的实现,并且执行了deflateCopy()
,但我不知道