使用以下 C++ 代码,使用 RapidXml 库,我只能获取顶层的 XML 元素,而不能获取子元素:
char *text = ... // XML file shown below
using namespace rapidxml;
xml_document<> doc;
doc.parse<0>(text);
xml_node<> *node = doc.first_node();
while(node != 0) {
cout << node->name() << " " << node->value() << endl;
node = node->next_sibling(); // <-- ???
}
XML 文件:
<parent>
<child>123</child>
</parent>
<parent>
<child>456</child>
</parent>
实际结果:
parent
parent
预期结果:
parent
child 123
parent
child 456
我怎样才能得到孩子?
谢谢!