XML属性が出力ファイル内にリストされる順序を制御するにはどうすればよいですか?Javaの出力ファイルにおけるXML属性の制御順序
デフォルトではアルファベット順になっているようですが、このXMLを送信しているプログラムは処理していないようです。
zzzz
を最初に表示し、次にbbbbb
を次のコードに示します。
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.newDocument();
Element root = doc.createElement("requests");
doc.appendChild(root);
root.appendChild(request);
root.setAttribute("zzzzzz", "My z value");
root.setAttribute("bbbbbbb", "My b value");
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File(file));
transformer.transform(source, result);
関連http://stackoverflow.com/q/726395/862441およびhttp://stackoverflow.com/q/3184598/862441 – srkavin