是否保证对于给定的压缩级别和给定的输入,压缩流将始终保持不变,也适用于不同的(即将推出的)zlib版本?zlib:压缩流总是一样的吗?
或者有什么办法可以让它变成这样吗?
否则,我将不得不复制一些特定的zlib版本到我的项目,并坚持。 (因为我需要这样的保证。)
感谢, 阿尔伯特
是否保证对于给定的压缩级别和给定的输入,压缩流将始终保持不变,也适用于不同的(即将推出的)zlib版本?zlib:压缩流总是一样的吗?
或者有什么办法可以让它变成这样吗?
否则,我将不得不复制一些特定的zlib版本到我的项目,并坚持。 (因为我需要这样的保证。)
感谢, 阿尔伯特
它根本没有保证。它有可能产生具有相同zlib参数的无限不同的压缩流 。这就是为什么有会之类的东西 gziphack:http://groups.google.com/group/comp.compression/browse_thread/thread/82fafc72949ed46c/0115418726ed45e1
http://www.advsys.net/ken/util/kzip.exe
http://www.advsys.net/ken/util/pngout.exe
http://www.walbeehm.com/download/DeflOpt207.7z
等
如果您正在使用的zlib相同的版本,则压缩将是完全一样的。显然,没有人可以对“即将发布的版本”发表任何评论。
没有理由的zlib打破如此庞大的安装基础兼容性。今天构建的zlib压缩流几乎没有可能在明天或明天之后的任何时候不再受到更新版本zlib的支持。 您可以安全地休息这个隐含的保证:整个行业取决于zlib的向前和向后兼容性。
不保证互操作性的新格式只会带来不同的名称,例如7zip。
是不是由标准设置的压缩算法?这将使未来发生显着变化的可能性很小(除了现有数据的巨大突出之外)。 – 2011-03-06 16:42:52