c++ - 使用QDOMDocument获取第一级子节点

标签 c++ qt qt4

我正在尝试使用 QDomDocument 解析 Xml 文件。
我有根元素。现在我需要查找并提取特定节点
在根元素下,但仅在层次结构的第一级。

我尝试使用:

QDomElement root = doc.documentElement();

QDomNodeList nodeList = root.elementsByTagName("apple");

但这会返回一个 nodeList,其中包含标签名称为“apple”的节点
在所有层次结构中。但我只需要一级搜索。

有人能帮帮我吗?
谢谢

最佳答案

没有方法可以完全按照您的意愿进行操作,但是通过使用以下方法遍历子项很容易实现:

QList<QDomElement> elements;
QDomElement child = root.firstChildElement("apple");
while(!child.isNull()) {
  elements.append( child );
  child = child.nextSiblingElement("apple");
}

关于c++ - 使用QDOMDocument获取第一级子节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10315644/

相关文章:

c++ - 在 g++ 下获取 stringstream >> my_double 以给出无限值或 NaN 的方法?

c++ - 如何使用 typedef 简化作为函数指针的模板函数参数

c++ - 带有 Qt 的 GUI 的 "About"消息框

c++ - Q图形场景

c++ - 多维数组赋值

c++ - 为什么获取已声明函数的地址才有效?

c++ - QByteArray 转换为 char(不是 char* 或 constChar*)

qt - 如何使用我的 Qt SDK 添加 VoIP 开发套件 (v2dkTP)?

c++ - 当宏用作变量名时,有什么方法可以跳过宏替换(在预处理期间)?

c++ - 在qt中,我如何实现一个与代码中的变量保持一致的小部件