xml缩进

时间:2010-12-27 06:44:03

标签: xml libxml2

我正在使用libxml2的xmlwriter api编写一个xml文件。

当我使用记事本打开文件时,缩进不正确。

有人知道如何修复它吗?

非常感谢。

2 个答案:

答案 0 :(得分:10)

我在这里有点意思,但我会说“缩进不对”你的意思是它根本没有缩进。

默认情况下,libxml2不会缩进XML文件,因为在XML中,空格(包括用于缩进的空格)是重要数据。也就是说,这个XML文件:

<root>
    <foo>Bar</foo>
</root>

在语义上与以下不同:

<root><foo>Bar</foo></root>

...因为第一个XML文件中的两个字符数据对您(程序员)来说可能很重要,因此,XML在读取文件时将它们留在那里,并且在写入时不会输出它们(除非指示)

那就是说,这是一个经常被滥用的XML。遗憾的是,我看到的大多数XML都是缩进的。 libxml2有选项可以在写入时自动输出缩进,并在读取时删除它,但请注意:有一些警告:它可能会出错。文档说的更多。

我认为这个功能可以帮助你(我从来没有真正使用过这个:-)),如果你想让它缩进:xmlTextWriterSetIndent

注意这里的警告:libxml2 FAQ

此处的信息:XML Specification

答案 1 :(得分:-1)

我相信你只想缩进,所以你可以阅读xml文件...在这种情况下,现在你可以使用谷歌浏览器查看xml,它将显示已缩进(请记住它不是一个好主意使用libxml2缩进xml文件。