关于tinyxml2 的插入和拷贝操作

 

 1 //1.复制节点操作
 2 XMLElement *newDOType1;
 3 //DeepClone可以递归复制当前节点下的全部节点 DeepClone中的参数为目标文档的Document对象
 4 tinyxml2::XMLNode *copyNode = newDOType1->DeepClone(WizardGlobal::oldDocument);
 5 //ShallowClone仅复制当前节点
 6 tinyxml2::XMLNode *copyNode = newDOType1->ShallowClone(WizardGlobal::oldDocument);
 7 //返回节点为复制完成的节点指针,如果为空指针则说明复制失败
 8 
 9 
10 //2.插入节点操作
11 //共有三种方法
12 //插入为root节点的第一个子节点
13 tinyxml2::XMLNode *tmpNode = root->InsertFirstChild(copyNode);
14 //插入为root节点下communication后的子节点
15 tinyxml2::XMLNode *tmpNode = root->InsertAfterChild(communication, copyNode);
16 //插入为root节点的最后一个子节点
17 tinyxml2::XMLNode *tmpNode = root->InsertEndChild(copyNode);

注意:以上方法返回值均为 tinyxml2::XMLNode * 而不是 XMLElement * 。

XMLNode为XMLElement的父类

posted @ 2024-02-02 14:46  BlackSnow  阅读(305)  评论(0)    收藏  举报