Qt5 json 数据处理
QT4中使用第三方库QJson解析JSON文件。
QT5新增加了处理JSON的类,类均以QJson开头,包含在QtCore模块中。
用到的头文件
#include <QJsonArray>
#include <QJsonDocument>
#include <QJsonObject>
json解析
1.
- QByteArray jsonData = "[{\"id\":\"11\", \"name\":\"aaa\"},"
- "{\"id\":\"22\", \"name\":\"bbb\"},"
- "{\"id\":\"33\", \"name\":\"ccc\"}]";
- QJsonParseError jsonError;
- QJsonDocument jsonDoucment = QJsonDocument::fromJson(jsonData, &jsonError);
- if(jsonError.error == QJsonParseError::NoError){
- if(!(jsonDoucment.isNull()||jsonDoucment.isEmpty())){
- QVariantList dataList=jsonDoucment.toVariant().toList();
- foreach (QVariant data, dataList) {
- QVariantMap dataMap=data.toMap();
- qDebug()<<"id:"<<dataMap["id"].toString()<<"name:"<<dataMap["name"].toString();
- }
- }
- }else{
- //检查错误类型
- qDebug()<<"jsonError:"<<jsonError.errorString();
- }
2.生成json
- QJsonArray jsonArray;
- QJsonObject jsonObj1;
- jsonObj1.insert ("task_name","task1");
- jsonObj1.insert ("task_status:","ok");
- jsonObj1.insert ("task_time:","2019_3_26");
- QJsonObject jsonObj2;
- jsonObj2.insert ("task_name","task2");
- jsonObj2.insert ("task_status:","error");
- jsonObj2.insert ("task_time:","2019_3_27");
- jsonArray.append (jsonObj1);
- jsonArray.append (jsonObj2);
- qDebug()<<jsonArray;
QJsonArray([{"task_name":"task1","task_status:":"ok","task_time:":"2019_3_26"},{"task_name":"task2","task_status:":"error","task_time:":"2019_3_27"}])
Qt5 json 数据处理的更多相关文章
- 【多端应用开发系列1.1.1 —— Android:使用新浪API V2】服务器Json数据处理——Json数据概述
[前白] 一些基础的东西本系列中就不再详述了,争取尽量写些必不可少的技术要点. 由于本系列把Web Service 构建放到了第二部分,Android项目就采用新浪微博API v2作为服务器端. [原 ...
- iOS开发——数据解析Swift篇&简单json数据处理
简单json数据处理 //loadWeather var url = NSURL(string: "http://www.weather.com.cn/adat/sk/101240701.h ...
- Spark SQL JSON数据处理
背景 这一篇可以说是“Hive JSON数据处理的一点探索”的兄弟篇. 平台为了加速即席查询的分析效率,在我们的Hadoop集群上安装部署了Spark Server,并且与我们的Hive数据仓 ...
- python接口自动化(十九)--Json 数据处理---实战(详解)
简介 上一篇说了关于json数据处理,是为了断言方便,这篇就带各位小伙伴实战一下.首先捋一下思路,然后根据思路一步一步的去实现和实战,不要一开始就盲目的动手和无头苍蝇一样到处乱撞,撞得头破血流后而放弃 ...
- JSON数据处理框架Jackson精解第一篇-序列化与反序列化核心用法
Jackson是Spring Boot默认的JSON数据处理框架,但是其并不依赖于任何的Spring 库.有的小伙伴以为Jackson只能在Spring框架内使用,其实不是的,没有这种限制.它提供了很 ...
- Qt json 数据处理
用到的头文件 #include <QJsonArray> #include <QJsonDocument> #include <QJsonObject> json解 ...
- ASP.MVC时间类型json数据处理
服务端返回DateTime属性如果用自带的json方法返回的数据如下: 有2种办法解决一种是采用服务端解决方案,一种是使用前端解决方案 1.前端解决方案 第一步:对Date进行扩展 // 对Date的 ...
- json数据处理实战:Kafka+Flume+Morphline+Solr+Hue数据组合索引
背景:Kafka消息总线的建成,使各个系统的数据得以在kafka节点中汇聚,接下来面临的任务是最大化数据的价值,让数据“慧”说话. 环境准备: Kafka服务器*3. CDH 5.8.3服务器*3,安 ...
- Json数据处理
1.字符串转换为Json数组:取json对象属性值. String st="[{"tradeDate":"2016-09-27","trad ...
随机推荐
- [HEOI2013]SAO ——计数问题
题目大意: Welcome to SAO ( Strange and Abnormal Online).这是一个 VR MMORPG, 含有 n 个关卡.但是,挑战不同关卡的顺序是一个很大的问题. 有 ...
- A1104. Sum of Number Segments
Given a sequence of positive numbers, a segment is defined to be a consecutive subsequence. For exam ...
- 初探angular2
Angular2 是一款开源JavaScript库,由Google维护,用来协助单一页面应用程序运行. Angular2 是 Angular 1.x 的升级版本,性能上得到显著的提高,能很好的支持 W ...
- hiho一下 第144周(机会渺茫)解题报告及拓展
题目1 : 机会渺茫 时间限制:5000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi最近在追求一名学数学的女生小Z.小Z其实是想拒绝他的,但是找不到好的说辞,于是提出了这样的要求: ...
- spring基于通用Dao的多数据源配置详解【ds1】
spring基于通用Dao的多数据源配置详解 有时候在一个项目中会连接多个数据库,需要在spring中配置多个数据源,最近就遇到了这个问题,由于我的项目之前是基于通用Dao的,配置的时候问题不断,这种 ...
- Gradle安装 Gradle效率提升 eclipse安装gradle插件 【我】
Gradle安装 从官网下载 gradle4.6版本,也可以从svn地址下载 https://downloads.gradle.org/distributions/gradle-4.6-bin.zip ...
- XMind 入门教程
选自:http://www.xmindchina.net/ XMind 是一款非常实用的商业思维导图软件,应用全球最先进的Eclipse RCP 软件架构,全力打造易用.高效的可视化思维软件.对于新手 ...
- PHP--traits
从PHP5.4.0起,PHP实现了代码复用的一个方法,称为traits. traits试图用来解决像PHP这样的面向对象语言中只支持单继承的问题.它的作用是允许我们在不使用继承的情况下为一个类增加功能 ...
- redis分布式工具类 ----RedisShardedPoolUtil
这个是redis分布式的工具类,看非分布式的看 这里 说一下redis的分布式,分布式,无疑,肯定不是一台redis服务器.假如说,我们有两台redis服务器,一个6379端口,一个6380端口.那 ...
- Hbase记录-Hbase调优参数