XMLEncoder是否保证编码对象字段的固定顺序?

时间:2014-07-22 06:23:26

标签: java xml xml-serialization xmlencoder

如果我使用java.beans.XMLEncoder(Java 1.6)对类进行编码,如下所示:

fileOutputStream = new FileOutputStream(someFile);
XMLEncoder xmlEncoder = new XMLEncoder(fileOutputStream);

xmlEncoder.writeObject(anyObject);
xmlEncoder.close();

当我在另一台物理机器(也使用Java 1.6)上运行时,写入someFile的结果具有不同的元素排序。

对由XMLEncoder编码的对象的字段排序是否有任何保证?

如果没有,每次对象进行xml编码时,如何强制执行相同的排序?

1 个答案:

答案 0 :(得分:0)

原因是在机器A上,程序在IBM JVM上运行,而在机器B上,程序在Sun JVM上运行。似乎XMLEncoder的实现因IBM和Sun JVM而异。