Qt QtXml读取xml文件内容

xml文件内容

<?xml version="1.0" encoding="UTF-8"?>
<YG_RTLS>
<Anchor_list>
<Anchor z="0" id="1" MA_ID="" y="1789" x="50" ant_dly="" type="2"/>
<Anchor z="0" id="2" MA_ID="" y="1840" x="2970" ant_dly="" type="2"/>
<Anchor z="0" id="3" MA_ID="" y="70" x="2940" ant_dly="" type="2"/>
<Anchor z="0" id="4" MA_ID="" y="9" x="-19" ant_dly="" type="2"/>
</Anchor_list>
<Anchor_Group id="1" map_id="0" type="2">
<Member id="1"/>
<Member id="2"/>
<Member id="3"/>
<Member id="4"/>
</Anchor_Group>
<CONFIG version="1"/>
</YG_RTLS>
//读取基站配置文件数据
void readSysConfigFileData(QString sysConfigFileName)
{
//打开或创建文件
QFile xmlFile(sysConfigFileName);
if (!xmlFile.open(QFile::ReadOnly))
{
return;
} QDomDocument docXML;
if (!docXML.setContent(&xmlFile))
{
xmlFile.close();
return;
}
xmlFile.close(); QDomElement xmlRoot = docXML.documentElement(); //返回根节点
QDomNode domNode = xmlRoot.firstChild(); //获得第一个子节点
while (!domNode.isNull()) //如果节点不空
{
if (domNode.isElement()) //如果节点是元素
{
QDomElement domElement = domNode.toElement(); //转换为元素,注意元素和节点是两个数据结构,其实差不多
QDomNodeList list = domElementchildNodes();
for (int i = ; i<list.count(); i++) //遍历子元素,count和size都可以用,可用于标签数计数
{
QDomNode nodeIndex = list.at(i);
if (domNode.isElement())
{
QDomElement indexElement = nodeIndex.toElement();
if (indexElement.hasAttribute("x"))
{
qDebug() << nodeIndex.nodeName() << ":" << nodeIndex.toElement().attribute("id") << " " << nodeIndex.toElement().attribute("x") << " " << nodeIndex.toElement().attribute("y") << " " << nodeIndex.toElement().attribute("z"); } }
}
}
//下一个兄弟节点,nextSiblingElement()是下一个兄弟元素
domNode = domNode.nextSibling();
} }

输出

"Anchor" : "1" "50" "1789" "0"
"Anchor" : "2" "2970" "1840" "0"
"Anchor" : "3" "2940" "70" "0"
"Anchor" : "4" "-19" "9" "0"

-------------------------------------------------------------------------------------------------------------

Qt QtXml读取xml文件内容的更多相关文章

  1. 通过Java读取xml文件内容

    读取XML中的内容就需要对XML进行解析,目前对XML进行解析的方法分为四种: 下面解析的方法是DOM4J,需要下载jar包dom4j:https://dom4j.github.io/ package ...

  2. php读取xml文件内容,并循环写入mysql数据库

    <?php $dbconn = mysql_connect("localhost","root","root"); $db = mys ...

  3. JS通过ajax动态读取xml文件内容

    http://www.sharejs.com/codes/javascript/8178 HTML文件代码如下 <!DOCTYPE html> <html> <head& ...

  4. 读取XML文件内容

    myeclipse中类的格式 上面中的RunMain.java为程序执行的入口,JdbcUtil.java为实体类,XmlDocumentUtil.java执行解释xml文件与获取里面的属性,程序所需 ...

  5. dom4j读取XML文件内容

    <?xml version="1.0" encoding="UTF-8"?> <RESULT> <VALUE> <NO ...

  6. 读取xml文件内容到数据库

    前言 前言不搭后语·················· 内容 听某个大牛说他们的公司常常会涉及到从xml文件中读数据到写入到数据库,序列化的时候会遇到这这个问题,将要持久化的数据到xml文件存储起来, ...

  7. 用Java读取xml文件内容

     在AXP中,DOM解析器是1 Document Builder类的一个实例,该实例由 DocumenBailderfactorv类负责创,步如下  DocumentBuilderFactory fa ...

  8. java Domj4读取xml文件

    先概括,再以代码形式给出. 获取节点: Iterator  Element.nodeIterator();  //获取当前标签节点下的所有子节点 获取 标签: Element Document.get ...

  9. selenium-python读取XML文件

    首先这是我们要读取的XML文件 <?xml version="1.0" encoding="utf-8" ?><info> <ba ...

随机推荐

  1. echarts 如何在世界地图中绘制中国地图

    1.导入 world.china.js  这个js是将world.js 文件 以及china.js文件进行合并 (网上一些中国地图勾勒的身份曲线感觉很飘  所以自己加工了一下china.js中的数据, ...

  2. Linux操作系统启动故障排错之/boot目录被删除恢复案例

    Linux操作系统启动故障排错之"/boot"目录被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模拟删除/boot分区 1>.查看/b ...

  3. Tensorflow简单实践系列(一):安装和运行

    TensorFlow 是谷歌开发的机器学习框架. 安装 TensorFlow 直接使用 pip 安装即可,添加豆瓣镜像可以加快速度: pip install tensorflow -i https:/ ...

  4. 有意义的单词分割——经典dfs题目

    680. 分割字符串 中文 English 给一个字符串,你可以选择在一个字符或两个相邻字符之后拆分字符串,使字符串由仅一个字符或两个字符组成,输出所有可能的结果 样例 样例1 输入: "1 ...

  5. 数组函数some、every、find、filter、map、forEach有什么区别

  6. 在Windows10系统下安装Oracle 11g数据库

    在Windows10系统下安装Oracle 11g数据库 https://blog.csdn.net/wei1992_6/article/details/60054727

  7. jQuery的下载以及使用

    一.概述 1.版本选择 jquery官网 jQuery的版本有很多,大家在选择版本的时候,一般原则是越新越好,但其实不然,jQuery版本是在不断进步和发展的,最新版是当时最高技术水平,也是最先进的技 ...

  8. 7-html列表

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...

  9. Random Walk——高斯消元法

    题目 有一个 $N \times M$ 大小的格子,从(0, 0)出发,每一步朝着上下左右4个格子中可以移动的格子等概率移动.另外有些格子有石头,因此无法移至这些格子.求第一次到达 $(N-1, M- ...

  10. 使用window.localStorage,window.localStorage记录点击次数

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...