C ++ Pugixml通过属性id获取父项的子项

时间:2013-10-05 10:24:44

标签: c++ cocos2d-x pugixml

例如:

<levels>
    <level id="1">
        <somestuff></somestuff>
    </level>
    <level id="2">
        <somestuff></somestuff>
    </level>
</levels>

如何获取ID为1的级别数据? 现在我正在使用pugi::xml_node level = levels.child("level")但是返回所有级别..

此致 GJJ

3 个答案:

答案 0 :(得分:2)

levels.find_child_by_attribute("level", "id", "1")

答案 1 :(得分:0)

试一试:

for (pugi::xml_node ambil = doc.child("levels").child("level"); ambil; ambil = ambil.next_sibling("level"))
{
    int id = ambil.attribute("id").as_int();
    CCLog("%d",id);
}

答案 2 :(得分:0)

foreach children&amp;比较属性值。 e.g。

for (const auto& node : levels.children("level"))
{
    if (node.attribute("id").as_int() == 1)
    {
        // TODO: add ur code here
    }
}