最佳答案
我使用 SQLite 访问数据库并检索所需的信息。我在 Python 2.6版中使用 ElementTree 来创建一个包含该信息的 XML 文件。
import sqlite3
import xml.etree.ElementTree as ET
# NOTE: Omitted code where I acccess the database,
# pull data, and add elements to the tree
tree = ET.ElementTree(root)
# Pretty printing to Python shell for testing purposes
from xml.dom import minidom
print minidom.parseString(ET.tostring(root)).toprettyxml(indent = " ")
####### Here lies my problem #######
tree.write("New_Database.xml")
我尝试用 tree.write("New_Database.xml", "utf-8")
代替上面的最后一行代码,但是它根本没有编辑 XML 的布局——它仍然是一团乱麻。
我还决定摆弄一下,试着做下面的事情:
而不是将其打印到 Python shell 中,从而产生错误 AttributeError: ‘ unicode’对象没有属性‘ write’。
当我在最后一行将树写入一个 XML 文件时,有没有一种方法可以像打印 Python shell 一样打印到 XML 文件中?
我可以在这里使用 toprettyxml()
吗? 还是有其他方法可以做到这一点?