pugixml-在特定节点上迭代



我有一个xml文档,其中有一个节点有子节点,但我想迭代存储在数组中的特定节点,例如:

const char* childrenNodes[]={"childNodeA", "childNodeC", "childNodeK"};

我可以使用next_sibling函数,它将上面数组的元素作为参数。你知道如何使用pugixml实现这样的循环吗?

next_sibling有两个重写

xml_node next_sibling() const;
xml_node next_sibling(const char_t* name) const;

你正专注于第二个。而是使用第一个不带参数的,然后只检查节点名称是否在数组中

pugi::xml_node node = root.first_child();
for (; node; node = node.next_sibling()
{
if (std::find(std::begin(childrenNodes), std::end(childrenNodes), node.name()) != std::end(childrenNodes))
{
// ...
}
}

相关内容

  • 没有找到相关文章

最新更新