QT5 解析JSON文件
2020-06-09 16:00:55来源:博客园 阅读 ()
QT5 解析JSON文件
QT读JSON文件步骤,这里把过程记录一下,网上大多都是怎么写json的,对于读的,记录的不多
- 首先JSON文件格式必须为UTF-8(非UTF-8 with BOM),UTF-8 with BOM 即为UTF-8 前加了BOM标识,会导致解析失败,报错内容非法,这时候就将文件保存为UTF-8就好了。
- QT5 解析JSON需要引入头文件
#include <QJsonDocument>
#include <QJsonObject>
#include <QJsonParseError>
- 从文件读入文本
#include <QFile>
QFile file("./ServerConfig.json");
if(file.open(QIODevice::ReadWrite | QIODevice::Text))//打开文件
{
QByteArray fileContent = file.readAll().data();//提取文本信息
}
- 解析文件内容
QJsonParseError err; //Json 解析错误类
QJsonObject jsonObj = QJsonDocument::fromJson(fileContent,&err).object();//将json解析成对象
if(jsonObj.isEmpty())//检查json是否合法(是否为空)
{
cout <<"[!!!]Abort!Config file Parsing Error"<<endl;
cout << err.errorString().toStdString()<< endl; //Json 解析错误信息
return;//当错误时,返回
}
else
{
QStringList keys = jsonObj.keys(); //取出关键词列表,如果你的json是动态的,那么需要靠这个列表取表项
}
if(jsonObj.contains("global"))//global项是否存在
{
jsonObj.value("global").toString();//取出这个项的内容
}
【若JSON为多层嵌套结构,则toString改为toObject,然后,再逐层查找】
原文链接:https://www.cnblogs.com/udream/p/13079582.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 解析一下C++的异常处理 2020-05-15
- c++虚函数例子解析 2020-04-03
- QT5中Json文件与QString的相互转化 2020-03-19
- Qt5小Demo之猜数字游戏 2020-03-19
- Qt5 error LNK2019 无法解析的外部符号的解决办法 2020-02-14
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash