我正在用Transformer通過添加更多節點來編輯Java中的XML文件。舊的XML代碼保持不變,但新的XML節點具有<
和>
而不是<>,並且位於同一行。我如何獲得<>而不是<
和>
以及如何在新節點之後獲得換行符。我已經閱讀了幾個類似的線程,但無法獲得正確的格式。這裏是代碼的相關部分:Java變壓器輸出<和>而不是<>
// Read the XML file
DocumentBuilderFactory dbf= DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc=db.parse(xmlFile.getAbsoluteFile());
Element root = doc.getDocumentElement();
// create a new node
Element newNode = doc.createElement("Item");
// add it to the root node
root.appendChild(newNode);
// create a new attribute
Attr attribute = doc.createAttribute("Name");
// assign the attribute a value
attribute.setValue("Test...");
// add the attribute to the new node
newNode.setAttributeNode(attribute);
// transform the XML
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
StreamResult result = new StreamResult(new FileWriter(xmlFile.getAbsoluteFile()));
DOMSource source = new DOMSource(doc);
transformer.transform(source, result);
感謝
你能展示一個小樣本輸入和一個小樣本輸出嗎? – Woot4Moo
在上面的代碼中沒有提及「<' or '>」。你如何注射他們? – fge
給我們一個線索!向我們展示一些尖括號... –