gpt4 book ai didi

compression - zlib: `deflate`和 `compress`函数之间的差异

转载 作者:行者123 更新时间:2023-12-03 14:29:26 49 4
gpt4 key购买 nike

zlib中的deflate()compress()函数之间有什么区别?

我浏览了在线示例,其中一些使用deflate,而另一些使用compress。

我应该如何决定在哪种情况下使用另一种情况?

最佳答案

compress()用于在一次调用中压缩数据,并且始终压缩为zlib格式,即使用两个字节的 header 和一个四个字节的校验值尾部压缩数据。 compress()单独使用。
deflate()用于一次压缩一块数据,和/或压缩为其他格式(例如gzip包装或原始格式)以及其他选项(例如内存级别和压缩策略)。

如果您一次拥有所有可用数据并且有足够的内存来保存结果,并且想要默认的压缩格式,内存使用量和策略,则可以使用compress()。否则,您将使用deflate()

deflate()本身不使用。您需要使用deflateInit()deflateInit2()初始化z_stream使用的deflate()结构。然后,您一次或多次调用deflate()来获取数据进行压缩并提供结果。最后,调用deflateEnd()释放结构中使用的内存资源。您可以阅读zlib.h和http://zlib.net/zlib_how.html中的文档以获取更多信息。

关于compression - zlib: `deflate`和 `compress`函数之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10166122/

49 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com