在 QtXML (QDomElement) 中编写 XML 节点

flo*_*hge 1 c++ xml qt4 qtxml

我想写像这样的节点

<name>Peter</name> 
Run Code Online (Sandbox Code Playgroud)

(带有开始和结束标记)到 QDomDocument 中。

当我创建 QDomElements 并将它们作为子元素附加到父元素时:

QDomElement node = doc.createElement("node");
parent.appendChild(node);
Run Code Online (Sandbox Code Playgroud)

它们被添加为

<node/>
Run Code Online (Sandbox Code Playgroud)

到父元素。父级会自动获取开始和结束标记,因此文件将如下所示:

<parent>
    <node/>
</parent>
Run Code Online (Sandbox Code Playgroud)

但是我如何向我的节点添加一个值,使它看起来像我想要的(在开始和结束标记之间有值)。将一个新的 QDomElement 作为子节点添加到节点,它看起来就像 . 添加属性会显示为 ?

如果有人可以帮助我,那就太好了!谢谢!

Căt*_*tiș 6

使用 DOM Document 创建一个文本节点,并将其作为子元素添加到您新创建的元素中:

QDomElement node = doc.createElement("name");
parent.appendChild(node);
// Now, add a text element to your node
node.appendChild( doc.createTextNode( "Peter"));
Run Code Online (Sandbox Code Playgroud)