将xml字符串存储在xml文件中

时间:2014-11-24 13:25:36

标签: java xml dom

我试图以下列方式将XML字符串存储在XML文件中

String appData =  "<Data><element><displayname>John</displayname></element></Data>";


org.w3c.dom.Element appData= doc.createElement("appData");
rootElement.appendChild(appData);
org.w3c.dom.Element appXmlData= doc.createElement("myData");
appData.appendChild(appXmlData);
appXmlData.setTextContent(appData);

TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File(path1));
transformer.transform(source, result);

数据存储在xml中

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<appData>
<myData>
      &lt;Data&gt;&lt;element&gt;&lt;displayname&gt;John&lt;/displayname&gt;&lt;/element&gt;&lt;/Data&gt;
</myData>

我想要的是

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<appData>
<myData>
    <Data><element><displayname>John</displayname></element></Data>
</myData>

帮助我实现这个目标

1 个答案:

答案 0 :(得分:0)

就像你做了一个

org.w3c.dom.Element appXmlData= doc.createElement("myData");

您必须为其他节点创建子元素:

org.w3c.dom.Element dataNode= doc.createElement("Data");
appXmlData.appendChild(dataNode);

等等...由于您使用的是dom api,它将转义节点中的xml内容。