我有一个文件夹"myfolder",这是在我解压缩odt文件时创建的。我已经删除了文件夹中的content.xml文件。现在我想添加一个名为"content.xml"的文件,其中包含数据(这里的变量"content"是xml样式的文本)。我试过了:
with zipfile.ZipFile('myfolder', mode='a', compression=zipfile.ZIP_DEFLATED) as zf:
zf.writestr('content.xml', content)
我得到一个odt文件,但它被损坏了。当我解压缩它时,里面只有content.xml文件。mode参数是'a',所以我认为它会将content.xml附加到其他文件。
有人能帮忙吗?
您可以尝试使用odfpy包。
你可以在这里和这里看到一些信息
Odfpy是一个读写OpenDocument v. 1.2文件的库。的主要的焦点是防止程序员创建无效的文档。它的检查会引发异常,如果程序员添加无效元素,添加语法未知的属性,忘记添加必需的属性或向元素添加文本不允许。它在pipy上,所以你可以用
来安装它
你可以用pip安装它:
pip install odfpy