【发布时间】:2013-05-24 17:11:32
【问题描述】:
我正在编写一个 python 应用程序,它创建一个 ElementTree (XML),然后使用 minidom 的 toprettyxml() 将其写入文件;
final_tree = minidom.parseString(ET.tostring(root))
fdout.write(final_tree.toprettyxml(indent = ' ')
问题是,我没有附加任何文本的标签只有一个标签,例如:
<sometag/>
我希望它是:
<sometag>
</sometag>
我想在不解析整个字符串(没有正则表达式)的情况下做到这一点。 有人熟悉这种方式吗? 谢谢。
【问题讨论】:
-
为什么会出现这样的问题?
-
因为它应该看起来像第二种方式。
-
第二个标签之间有换行符。不等于空。
-
是的,但是为什么呢?任何 xml 解析器都不应该对第一种形式有问题。另一方面,第二个不完全等同于第一个,因为它包含空格。如果有的话,那么相当于
<sometag/>是<sometag></sometag>(之间没有任何空格)。 -
我明白,这是一个要求。
标签: python xml-parsing elementtree