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>、ルートのテキスト ノード、child1、child1 のテキスト ノード、child2、child2 のテキスト ノードです。したがって、root の子の数は 5 です。ただし、一般に、XML 表記法では 2 であると考えられます。したがって、ここで最後の子を削除しようとすると、エラーになります。そのテキスト ノードを child2 から削除できます。

于 2011-09-02T07:16:20.067 に答える