次のような改行を含むxmlファイルを作成したいと思います。
<Instrument currencyId="THB"
disabledCount="0"
hasBeenEnabledOnce="TRUE"
</Instrument>
このコードを使用して近づきましたが、すべての属性が同じ行にあるようです:
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.newDocument();
Element rootElement = doc.createElement("Instrument");
doc.appendChild(rootElement);
Instrument.setAttribute("currencyId", "THB");
Instrument.setAttribute("disabledCount", "0");
Instrument.setAttribute("hasBeenEnabledOnce", "TRUE");
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4");
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("C:\\file.xml"));
transformer.transform(source, result);
次の結果が得られます。
<Instrument currencyId="THB" disabledCount="0" hasBeenEnabledOnce="TRUE"
属性間に改行を追加するにはどうすればよいですか??
ちょっとしたお知らせですが、transformer.setOutputProperies で問題を解決できると思いました。同様の問題を検索すると、"OutputKeys.INDENT"、"yes"、およびインデント量 -> "4" になりました。しかし、何も変わっていません。ファイルをメモ帳++で開くか、Webページとして開くかは関係ありません。