Qt中xml元素的遍历

前端之家收集整理的这篇文章主要介绍了Qt中xml元素的遍历前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
#include <QtCore/QCoreApplication>
#include <QDomDocument>
#include <QFile>
#include <QDebug>

int main(int argc,char *argv[])
{
    QCoreApplication a(argc,argv);
    
    QDomDocument doc;
    QFile file("H:\\Soft\\QQ\\AuI18N\\2052\\StringBundle.xml");
    QString errorStr;
    int errorLine;
    int errorCol;

    if (!file.open(QIODevice::ReadOnly))
        return 0;

    if(!doc.setContent(&file,true,&errorStr,&errorLine,&errorCol))
    {
        file.close();
        qDebug()<<"errorStr:"<<errorStr<<"\n";
        qDebug()<<"errorLine:"<<errorLine<<
                "  errorCol:"<<errorCol;
        return 0;
    }

    file.close();

    QDomElement root = doc.documentElement();
    QDomElement ele = root.firstChildElement();

    int i = 1;
    for(;!ele.isNull();ele = ele.nextSiblingElement()){
        if(ele.hasAttribute("id"))
        {
            qDebug()<<i<<": "<<ele.attributeNode("id").value();
            i++;
        }
    }
    return a.exec();
}

在Qt中用QDomDucument 遍历xml文件中的String元素的“id”属性

xml文件如下:

<?xml version="1.0" encoding="UTF-8"?>
<StringBundle version="1.0">
	<String id="IDS_ACT_STARTING_DOWNLOAD_MODULE_UPDATE_PACK">
		开始下载模块升级包
	</String>
	<String id="IDS_PPModuleSelect_SelectPkg">
		请选择要安装的更新
	</String>
	<String id="IDS_ERR_QUERYING_MODULE_UPDATE_LIST">
		网络错误查询可用更新失败。
	</String>
	<String id="IDS_PPModuleSelect_Title">
		更新内容:
	</String>
	<String id="IDS_PPModuleSelect_Detail">
		详细信息:
	</String>
	<String id="IDS_PPModuleSelect_DownloadSize">
		下载大小:
	</String>
	<String id="IDS_ERR_UNZIPPING_UPDATE_PACK">
		升级错误升级失败。下次升级自动尝试修复此问题,如此错误反复出现,请联系客服。
	</String>
	<String id="IDS_ERR_UPDATE_PACK_DAMAGED">
		升级包损坏,升级失败。下次升级自动尝试修复此问题,如此错误反复出现,请联系客服。
	</String>
	<String id="IDS_PPModuleSelect_DownloadTime">
		估计耗时:
	</String>
	<String id="IDS_PPModeSelect_Welcome">
		欢迎使用在线升级。
	</String>
	<String id="IDS_ERR_NETWORK_BUSY">
		网络繁忙,请稍后再试……
	</String>
	<String id="IDS_PPWELCOME_NetPrompt">
		使用internet连接进行在线升级操作
	</String>
	<String id="IDS_PPWELCOME_BTNNetSetup">
		高级网络设置
	</String>
</StringBundle>
原文链接:https://www.f2er.com/xml/299874.html

猜你在找的XML相关文章