之前也没用过 py 来生成 xml。一般都是 lxml 解析。
然后今天代码用内置的 xml 模块写好了,生成的时候才发现个坑,塔喵的 xml 模块生成的 xml 文件硬是有个
<?xml version="1.0" ?>
头。
再看了下 xml 模块的源码。。
def writexml(self, writer, indent="", addindent="", newl="",
encoding = None):
if encoding is None:
writer.write('<?xml version="1.0" ?>'+newl)
else:
writer.write('<?xml version="1.0" encoding="%s"?>%s' % (encoding, newl))
for node in self.childNodes:
node.writexml(writer, indent, addindent, newl)
之后查了下 lxml 生成的没头,这个 xml 生成的一定有头。但是又有点懒得用 lxml 再重写一次了(因为结点有点多)。所以有什么办法可以去掉这个<?xml version="1.0" ?>
头不?
比如说 lxml 有什么美化 xml 输出的方法之类的不,因为这玩意不仅多了头,连下面的行都有自带多个 tab,单纯用文件形式打开,再 replace 掉开头一行感觉也不太对。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.