Python 使用现有压缩头压缩文本字符串

Python 使用现有压缩头压缩文本字符串,python,compression,zlib,Python,Compression,Zlib,我希望使用从存档中已压缩的文件(本地文件头)检索到的预先存在的头来压缩给定字符串 我试图查看,虽然他们的压缩/解压缩工作得很好,但我找不到设置压缩头的选项 我希望避免解压缩文件,在文件中添加字符串,然后重新压缩文件。相反,我只想将给定的字符串“附加”到给定的压缩文件中 我尝试使用Python中现有的模块,这里我尝试修改Zipfile模块来处理预设的头,但是从这一点我可以得出结论,Zipfile模块过于依赖zlib库,这是不可能的 虽然我尝试使用Python,但我很乐意使用任何编程语言。您想做的事

我希望使用从存档中已压缩的文件(本地文件头)检索到的预先存在的头来压缩给定字符串

我试图查看,虽然他们的压缩/解压缩工作得很好,但我找不到设置压缩头的选项

我希望避免解压缩文件,在文件中添加字符串,然后重新压缩文件。相反,我只想将给定的字符串“附加”到给定的压缩文件中

我尝试使用Python中现有的模块,这里我尝试修改Zipfile模块来处理预设的头,但是从这一点我可以得出结论,Zipfile模块过于依赖zlib库,这是不可能的


虽然我尝试使用Python,但我很乐意使用任何编程语言。

您想做的事情比您想象的要复杂。但是,代码已经编写好了。查看。

“我尝试过”-它们在哪里,有什么问题。编辑以反映上述评论。您试图解决的实际问题是什么?基本上是在压缩文件中为给定搜索词进行模式匹配。这是否回答了您的问题?向压缩文件追加字符串与“压缩文件中给定搜索词的模式匹配”无关。这似乎是用于写入日志文件,而不是现有文件(如压缩文档)?我是不是误解了什么?请举一个使用示例。我希望避免解压缩文件,在文件中添加字符串,然后重新压缩文件。相反,我只想将给定字符串“附加”到给定的压缩文件中。这正是gzlog所做的,因为您使用gzlog生成压缩文件。它避免了解压缩或重新压缩。如果你想附加到一个未准备好的gzip文件,那么你需要先解压整个文件,但你不需要像gzappend.c那样重新压缩它(也可以在zlib中的示例中找到)。如果我错了,请纠正我,但从这一点我推断,“附加”应该是不可能的到以前仅使用给定文件的压缩头压缩的文本文件,除非给定文件是使用gzlog压缩的?这是没有解压缩和重新压缩。你需要再次阅读我最后的评论。可以通过解压缩但不重新压缩来附加到放气压缩流。你一直在谈论一个“压缩头”,它在这里没有任何意义。整个未准备好的压缩文件必须经过处理才能附加到其中。