赞
踩
背景
我使用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的布局——它仍然是一团混乱。
我还决定四处闲逛,试着做:
tree = minidom.parseString(ET.tostring(root)).toprettyxml(indent = " ")而不是将其打印到Python shell,这将导致错误attribute error:“unicode”对象没有属性“write”。
问题
当我在最后一行将树写入XML文件时,有没有办法像对Python shell那样漂亮地打印XML文件?
我可以在这里使用toprettyxml()吗?或者有其他方法可以这样做吗?
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。