关于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的父类

浙公网安备 33010602011771号