在命令行上使用 gzip 是否与以编程方式使用 zlib 具有相同的结果?

does using gzip on command line have the same result as using zlib programmatically?

我可以在命令行上使用 gzip 或以编程方式使用 zlib 压缩文件。创建的压缩文件是否相等?我可以接受不同的 headers.

另外,gzip的压缩因子(1-9)和zlib的参数(级别,window位和内存级别)有什么关系?

不,它们并不完全相同,但两者都与任一解压缩器兼容。换句话说,由两者生成的 gzip 流在它们之间或与任何其他兼容的解压缩器都可以互换。

zlib 也有压缩级别 1-9,其行为与 gzip 的级别 1-9 大致相同。 window 位和内存级别参数在 gzip 上不可用,它们在 zlib 的默认值中有效修复。这些参数都允许嵌入式 zlib 应用程序以降低压缩效率为代价使用更少的内存。