读/写XML文件,保留原始属性顺序

时间:2015-07-22 18:16:22

标签: java xml xml-parsing

我正在使用javax.xml.parsers.DocumentBuilder来解析现有的XML文件并获取org.w3c.dom.Document的实例。

在对此实例进行操作后,我需要将其写回文件。因此,如何使用org.w3c.dom.DocumentXMLStreamWriter对象写入XML文件?

PS:我问这个,因为我认为我需要使用XMLStreamWriter来编写XML文件而不会丢失属性顺序。属性顺序很重要,因为在版本树中,由于属性顺序的更改,我不希望看到XML文件发生变化。

1 个答案:

答案 0 :(得分:0)

根据{{​​3}}:

Attribute order is insignificant

  

请注意start-tag或中的属性规范的顺序   空元素标签不重要。

因此,XMLStreamWriter无法约束属性排序。

通常,XML建议都会认为属性排序无关紧要,但如果您的应用程序需要属性排序,请参阅XML Recommendation中的section on attribute processingXML Normalization Recommendation