1
    root = doc->getDocumentElement();
    child=root->getLastChild();

    DOMNode* removedElement = root->removeChild(child);
    removedElement->release();

如果 XML 文件如下所示,则子节点将换行符作为节点:

     <root>
         <child1> </child1>
         <child2> text </child2>
      </root>

如果 XML 文件的格式相同,则相同的代码可以正常工作并删除子项

     <root> <child1></child1><child2>text</child2> </root>

我怎样才能摆脱它(换行符)?

4

1 回答 1

1

自己找到了答案。

对DOM的理解不同。本<root>例中的子节点是root的文本节点,child1,child1的文本节点,child2,child2的文本节点。所以 root 的孩子的数量是 5。但通常,根据 XML 符号,我们认为它们是 2。所以当我尝试删除最后一个孩子时,这是一个错误。我们可以从 child2 中删除该文本节点。

于 2011-09-02T07:16:20.067 回答