我创建了一个包含以下内容的XML文档。
<books>
<book id="1">
<title>Title01</title>
<authors/>
<pages>
<page>Page01</page>
<page>Page02</page>
<page>Page03</page>
<page>Page04</page>
<page>Page05</page>
</pages>
</book>
<book id="2">
<title>Title02</title>
<authors/>
<pages>
<page>Page01</page>
<page>Page02</page>
<page>Page03</page>
<page>Page04</page>
<page>Page05</page>
</pages>
</book>
</books>
然后我使用Python脚本将各个书籍拆分并写入单独的文件;但是,生成的文件不是XML文件,因为它们没有XML声明。有没有办法在Python中创建XML文件?
我们的想法是确保每个文件都具有XML声明,如下所示。
<?xml version="1.0" encoding="ISO-8859-1" ?>
<book id="1">
<title>Title01</title>
<authors/>
<pages>
<page>Page01</page>
<page>Page02</page>
<page>Page03</page>
<page>Page04</page>
<page>Page05</page>
</pages>
</book>
答案 0 :(得分:0)
为什么不在编写图书条目之前将xml声明写入每个图书文件?
答案 1 :(得分:0)
使用UTF-8
对您的文件进行编码,而不是像ISO-8859-1
这样的遗留编码。那么你不需要XML声明。
答案 2 :(得分:0)
您应该查看xml.etree.ElementTree
模块。该链接适用于Python 3,但它之前已包含在内。我在Python 2.5中使用它,所以你应该没问题。
此外,xml.dom.minidom
我的成绩也不错。构建Document
后(通过添加createElement('ELEM_NAME')
的元素,您只需将其写入包含mydoc.toprettyxml()
的流。