Compression 给定一个解压缩的gzip文件,有没有办法重新创建精确的原始gzip文件?

Compression 给定一个解压缩的gzip文件,有没有办法重新创建精确的原始gzip文件?,compression,zip,gzip,deflate,representation,Compression,Zip,Gzip,Deflate,Representation,给定一个gzip文件Z,如果我将它解压缩到Z',有没有办法重新压缩它以得到完全相同的gzip文件Z?在粗略阅读了DEFLATE格式之后,我猜不会,因为任何给定的文件都可能有DEFLATE流格式的多个表示,并且无法确定最初使用的是哪一个。有人能证实这个推理是否正确吗?如果不正确,请指出我如何做到这一点 另外,哪些压缩算法/格式被严格指定为一个文件只有一个压缩表示形式 谢谢 gzip肯定不行,除非你也知道所涉及的工具和参数(甚至可能知道) 考虑到所涉及的权衡,我不认为这是可取的,因为用户无法平衡不同

给定一个gzip文件Z,如果我将它解压缩到Z',有没有办法重新压缩它以得到完全相同的gzip文件Z?在粗略阅读了DEFLATE格式之后,我猜不会,因为任何给定的文件都可能有DEFLATE流格式的多个表示,并且无法确定最初使用的是哪一个。有人能证实这个推理是否正确吗?如果不正确,请指出我如何做到这一点

另外,哪些压缩算法/格式被严格指定为一个文件只有一个压缩表示形式


谢谢

gzip肯定不行,除非你也知道所涉及的工具和参数(甚至可能知道)


考虑到所涉及的权衡,我不认为这是可取的,因为用户无法平衡不同的关注点。我不希望在Web服务器上动态执行gzip以进行内容编码或传输编码时使用相同的参数,就像我在酒吧愉快地让机器在一夜之间完成工作时压缩大量存档时使用的参数一样。

你在用它做什么?可能有解压的替代方法,例如zlib或gzopen(直接从压缩文件读取)。