从字符串创建IXMLDOMnode

时间:2015-07-14 09:52:14

标签: c++ xml xml-parsing xmlnode

我有一个字符串,其中包含XML节点的XML表示形式,我打算将其插入到内存中加载的XML文档中。 XML字符串(节点)是这样的:

<ns1:Feature name=\"PageSize\">\
    <ns1:Option name=\"A4\" />\
 </ns1:Feature>

因此,它也有标签名称的命名空间。

有没有办法实现这个目标?

  1. 我尝试使用XMLDomNode->put_text(),但它不起作用,因为它取代了&#34;&lt;&#34;和&#34;&gt;&#34;字符表示(&lt;等)

  2. 我想知道是否在单独的内存中XML文档中加载字符串缓冲区,然后从那里获取节点指针将对我的原始文档起作用。但同样,不确定XMLDOMnodes是否可以在文档中转移。

1 个答案:

答案 0 :(得分:0)

我自己用第二种方法解决了这个问题:

1)基于 IXMLDOMDocument3 接口创建一个内存中的xml文档,并在其中加载xml字符串。

2)使用 selectNode()方法选择所需的节点。

3)现在返回您希望放置节点的orinial xml文档,并将其作为 IXMLDOMDocument3 接口重新加载。

4)使用步骤3中 IXMLDOMDocument3 importNode()方法克隆在步骤2中获得的节点。

5)您现在可以使用克隆节点对原始xml执行 appendChild()