C++ 如何使用qt删除嵌套的xml元素

C++ 如何使用qt删除嵌套的xml元素,c++,xml,qt,dom,C++,Xml,Qt,Dom,我有这样的xml文件 <root> <element> <child id = "0"> Some Text </child> <-- Target To Delete </element> <element> <child id = "1"> Some Text </child> </element> </root>

我有这样的xml文件

<root>
   <element>
       <child id = "0"> Some Text </child> <-- Target To Delete
   </element>
   <element>
       <child id = "1"> Some Text </child>
   </element>
</root>

一些文本
qdom文档;
doc.setContent(oldXml);
QDomNodeList节点=doc.elementsByTagName(“元素”);
对于(int i=0;i
QDOM文件文档;
doc.setContent(oldXml);
QDomNodeList节点=doc.elementsByTagName(“元素”);
对于(int i=0;i
谢谢,什么是“QString newXml=doc.toString();”是字符串中修改过的xml文档?我可以直接将其写入文件吗?是的,此字符串包含修改过的xml文档。是的,您可以将其写入文件。谢谢,什么是“QString newXml=doc.toString();”它是字符串中修改的xml文档吗?我可以直接将其写入文件吗?是的,此字符串包含修改过的xml文档。是的,您可以将其写入文件。
QDomDocument doc;
doc.setContent(oldXml);

QDomNodeList nodes = doc.elementsByTagName("element");
for (int i = 0; i < nodes.count(); ++i)
{
    QDomNode node = nodes.at(i);
    QDomElement child = node.firstChildElement("child");
    if (!child.isNull() && child.attribute("id") == "0")
    {
        node.removeChild(child);
    }
}

QString newXml = doc.toString();