如何使用Python将base64文件插入到指定标记中

2024-09-27 18:07:23 发布

您现在位置:Python中文网/ 问答频道 /正文

<book>
  <title>sponge bob</title>
  <author>Joe Doe</author>
  <file>Tbase</file>
</book>

我有两个文件,一个是xml,另一个是base64文件。我想知道如何用python的base64替换字符串。在


Tags: 文件字符串titlexmlfileauthorbobjoe
1条回答
网友
1楼 · 发布于 2024-09-27 18:07:23

是否要将base64文件(仍然是base64编码)的逐字内容放入XML文件中,而不是“Tbase”?如果是这样的话,你可以这样做:

xml = open("xmlfile.xml").read()
b64file = open("b64file.base64").read()
open("xmlfile.xml", "w").write(xml.replace("Tbase", b64file))

(如果您使用的是Python2.6或更高版本,可以使用with语句做得更清楚一些,但这是另一个讨论。)

如果您想先对base64文件进行解码,并将解码后的内容放入XML文件中,那么应该将上面示例最后一行的b64file替换为b64file.decode("base64")。在

当然,如上所述,进行简单的文本替换,会让您发现如果标题或作者也包含“Tbase”就会遇到的问题。更好的方法是使用实际的XML解析库,如下所示:

^{pr2}$

这会将<file>标记的内容设置为文件b64file.base64的内容,而不管它以前的内容是什么,也不管“Tbase”是否出现在XML文档的其他地方。在

相关问题 更多 >

    热门问题