两种在Tinyxml中查找元素的方法,对应两种不同的XML文件格式。
test2.xml文件:
cpp代码:
这里的element 指针就是当前我们操作的指针,通过docH.FirstChildElement( "document" ).FirstChildElement( "Button" ).Element();方法我们获取了要寻找的Button这个元素的指针,然后它的元素就可以通过element->Attribute( "name" );element->Attribute( "x" )来得到了,使用非常方便。
test.xml文件:
cpp代码:
这里主要使用了NextSiblingElement()这个函数,指向了下一个兄弟节点,这种操作能够得到下一个兄弟节点的指针,而无需知道兄弟节点的任何其他信息。但是第一种方法, 例如在TiXmlElement* element = docH.FirstChildElement( "document" ).FirstChildElement( "Button" ).Element();的操作作中,就必须知道"document"、"Button"等信息。
编辑子节点
你可以插入、删除替换所有的子节点。
TiXmlNode* InsertEndChild( const TiXmlNode& addThis );
TiXmlNode* InsertBeforeChild( TiXmlNode* beforeThis, const TiXmlNode& addThis );
TiXmlNode* InsertAfterChild( TiXmlNode* afterThis, const TiXmlNode& addThis );
上面三个函数用于插入节点,InsertEndChild函数让你把新节点插入到末尾,InsertBeforeChild和InsertAfterChild函数允许你在指定的节点位置前后插入节点。
TiXmlNode* ReplaceChild( TiXmlNode* replaceThis, const TiXmlNode& withThis );
ReplaceChild函数用于替换指定的节点。
bool RemoveChild( TiXmlNode* removeThis );
void Clear();
RemoveChild函数让你删除指定的节点。
Clear函数会删除本节点的所有子节点(包括子节点包含的从子节点),但不会修改本节点。