我有一堆嵌入了zlib
流的文件。它从偏移0x200
开始,在第一个文件中带有“ZLIB”魔术头;以下文件在同一偏移处有一个延续,没有魔法。
问题是:当我做的时候
d=zlib.decompressobj()
s=open("file0.bin","rb")
o=open("out.bin","wb")
s.seek(0x200,0)
c=s.read(100000)
o.write(d.decompress(c))
d.decompress
的 error: Error -3 while decompressing: unknown compression method
错误。
如果我为第一个文件寻找0x204
,而对于以下文件寻求0x200
,那么它确实很好,但这很不方便。
由于ZLIB
魔法很常见来表示zlib
个流,因此必须有一些库存方式来跳过它/添加它。
我看到了Python decompressing gzip chunk-by-chunk,但它处理的GZip标题完全不同。