zlib - 我可以在同一文件中更改 zlib 压缩级别吗

标签 zlib

如果我这样做会破坏输出

  1. 将数据写入压缩级别(例如)6 的文件。
  2. 关闭该 zstream 并打开一个新的 zstream,使用不同的压缩级别(例如 1)调用 deflateInit,并将该数据附加到同一文件中。

最佳答案

是的,您会损坏输出,因为 zlib 解码器不期望连接 zlib 流。

但这并不重要,因为您不需要结束 zlib 流来更改压缩级别。 deflateParams() 函数允许您在中途更改压缩级别和压缩策略。请阅读zlib.h中的文档。

关于zlib - 我可以在同一文件中更改 zlib 压缩级别吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32960138/

相关文章:

c++ - 使用 argv[] 调用类似 main 的函数

用于打开受密码保护的文件的 C zip 库

javascript - 错误 : incorrect header check at Zlib. _handle.onerror (zlib.js :355:17) errno: -3, 代码: 'Z_DATA_ERROR'

c++ - 使用 libzip 从 .zip 获取文件(文本除外)

ios - 未知对象类型的zlib解压方法

CodeBlocks 中的 GTK 在 zlib1.dll 中没有 deflateSetHeader

ruby - 使用 Zlib for gzip 在 ruby​​ 中压缩大文件

python - 无法使用 get-pip 安装 pip,zipimport.ZipImportError : can't decompress data; zlib not available

c# - 在.net core中创建 "shared zlib context"

c - 使用 zlib 将 GZIP 压缩到缓冲区