1

次のような改行を含む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ページとして開くかは関係ありません。

4

0 に答える 0