Java 编写XML元素时设置属性的顺序

Java 编写XML元素时设置属性的顺序,java,xml,Java,Xml,使用java编写时,请执行以下操作: Element fieldEl = targetDocument.createElement("field"); fieldEl.setAttribute("Wine","Marlo"); fieldEl.setAttribute("Beer","Corona"); 结果XML文件中不保留添加属性的顺序 我如何控制XML元素中属性的顺序(这样人类就可以很容易地读取…) 实现NamedNodeMap接口的对象用于表示可以通过名称访问的节点集合。请注意,Nam

使用java编写时,请执行以下操作:

Element fieldEl = targetDocument.createElement("field");
fieldEl.setAttribute("Wine","Marlo");
fieldEl.setAttribute("Beer","Corona");
结果XML文件中不保留添加属性的顺序

我如何控制XML元素中属性的顺序(这样人类就可以很容易地读取…)

实现NamedNodeMap接口的对象用于表示可以通过名称访问的节点集合。请注意,NamedNodeMap不会从NodeList继承;NamedNodeMaps不按任何特定顺序维护实现NamedNodeMap的对象中包含的对象也可以通过顺序索引访问,但这只是为了方便枚举NamedNodeMap的内容,并不意味着DOM指定了这些节点的顺序。

(增加了强调)在以下两种情况下:

请注意,属性规范在开始标记或空元素标记中的顺序并不重要


我认为,许多DOM实现根本不支持属性排序。您必须编写自己的序列化机制才能实现排序(没有双关语)。

不,这是xml标准。如果需要有序值,请将信息放入元素中。