使用libxml库函数删除c中的xml节点

时间:2014-03-27 09:13:15

标签: c libxml2

我想从XmlNodeptr中删除xmlNode。例如,从下图中我想删除节点' XX' (和他们的孩子在这里' m')。我怎么能使用c语言libxml库???那有没有直接的库功能?

<PP>
    <ABCD>
        <XX>
            <m>1</m>
        </XX>
    </ABCD>
</PP>

1 个答案:

答案 0 :(得分:0)

只需使用xmlUnlinkNode,然后可能会跟xmlFreeNode。来自文档:

void xmlUnlinkNode (xmlNodePtr cur)
  

取消节点与其当前上下文的链接,该节点未被释放。如果需要释放节点,请在取消链接后使用xmlFreeNode()例程将其丢弃。请注意,命名空间节点无法取消链接,因为它们没有指向父节点的指针。