简体   繁体   English

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

[英]Store xml string in xml file

I am trying to store XML string in XML file in the following way 我正在尝试通过以下方式将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);

the data is stored in the xml as 数据以以下格式存储在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>

What i want is 我想要的是

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

Help me in achieving this 帮助我实现这一目标

Like you did a 就像你做了一个

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

you have to create child elements for your other nodes: 您必须为其他节点创建子元素:

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

and so on...Since you are using the dom api, it will escape the xml content in your node. 依此类推...由于您使用的是dom api,因此它将转义您节点中的xml内容。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM