192.168.0.1
但是使用xml.dom.minidom.Document.writexml后,输出的结果却是这样的:
[html] view plain copy
192.168.0.1
开始的时候,我考虑重写Document.writexml函数,觉得太麻烦,有用牛刀杀鸡之感。后来想想,其实自己的需求非常简单,只是需要对Document的输出结果做个二次处理即可。使用python的正则表达式库就可以实现:
[python] view plain copy
def save_xml(self, file_name):
xml_str = self.m_dom.toprettyxml(indent=" ")
repl = lambda x: ">%s" % x.group(1).strip() if len(x.group(1).strip()) != 0 else x.group(0)
pretty_str = re.sub(r'>\n\s*([^
open(file_name, 'w').write(pretty_str)
先将Document输出到字符串,然后使用正则表达式将text中的空行去掉即可。