天天看點

使用tinyxml操作xml中的葉節點

 觀察一下下面的xml文本:

<root>

    <item id="0000">leaf note<item>

</root>

item是root的一個節點,它對應tinyxml中的TiXmlElement類(從TiXmlNode派生)對象,節點的value是指文本"item",而文本"leaf note"也是一個節點,不過它是葉節點,它對應TiXmlText(從TiXmlNode派生)類的對象,如果你想添加一個葉節點,應該先建立TiXmlText對象然後再添加,下面是部分代碼:

...

TiXmlElement* root->doc.RootElement();

//添加節點item到root下

TiXmlElement eleitem("item");

eleitem.SetAttribute("id", "0000");

// 添加葉節點到itm下

TiXmlText leafnote("leaf note");

eleitem.InsertEndChild(eleitem);

root->InsertEndChild(eleitem);

doc.SaveFile();

如果你想讀取文本"leaf note",可以使用下面代碼(部分):

TiXmlNode* node = root->FirstChild("item");

TiXmlElement* element = node->ToElement();

const char* text = element->GetText();//text即是文本"leaf note"

//TiXmlText* textnote = node->ToText(); //但無法擷取文本"leaf note"

附:

本文轉自jetyi51CTO部落格,原文連結: http://blog.51cto.com/jetyi/763231,如需轉載請自行聯系原作者

繼續閱讀