2011-08-05 3 views
1
root = doc->getDocumentElement(); 
    child=root->getLastChild(); 

    DOMNode* removedElement = root->removeChild(child); 
    removedElement->release(); 
XML 파일과 같은 경우 아이가 노드로 개행 문자를 받고있다

: 동일한 코드가 잘 작동하고 아이를 제거하고Xerces-C를 사용하여 C++의 XML 파일에서 하위 노드를 제거하는 방법은 무엇입니까?

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

XML 파일 형식 인 경우

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

어떻게 제거 할 수 있습니까 (개행)?

+0

답변을 찾았으므로 동의해야합니다. –

답변

1

답을 직접 찾았습니다.

DOM의 이해가 다릅니다. 이 경우 <root>의 하위 노드는 root, child1, child1의 텍스트 노드, child2, child2의 텍스트 노드의 텍스트 노드입니다. 그래서 root의 자식 수는 5입니다. 그러나 일반적으로 XML 표기법에 따라 2가 있다고 생각했습니다. 그래서 마지막 자식을 제거하려고하면 오류가 발생합니다. 그 텍스트 노드를 child2에서 제거 할 수 있습니다.

관련 문제