TinyXML循环元素

时间:2012-08-27 22:26:13

标签: c++ xml

使用TinyXML读取xml文件。我想循环遍历多个元素但由于某种原因它只遍历第一个元素。一个简短的示例xml文件是:

<root>
    <wave_manager name="WaveManager01">
    </wave_manager>
    <wave_manager name="WaveManager02">
    </wave_manager>
</root>

循环的代码是:

TiXmlElement* root = _waveDoc.FirstChildElement("root");
for(TiXmlElement* e = root->FirstChildElement("wave_manager"); e != NULL; e = root->NextSiblingElement("wave_manager"))
{
    string wmName = e->Attribute("name");

}

所以这只循环一次,wmName显示WaveManager01,但是for循环存在。

1 个答案:

答案 0 :(得分:4)

您的handler.postDelayed(notifyItemChanged, theDurationValue); } 语句在每次迭代时都会将for元素重置为root。它应该转到列表中的下一个元素 - e

这是正确的代码:

e