当前位置: 首页 > article >正文

QT教程-十六,QT中如何解析JSON

一,对json的初步认识

        (这里我们主要说明最常用的,以一个宏观的概念来说一下),json是一种数据格式,作用就是便于传递信息,我们可以按其结构和对应关系,拿到我们想要的数据。其主要结构为:json对象(大括号包裹 { }),以及json数组(中括号包裹[ ])。
例子:

json对象

{
 "name":"张三", 
 "age":"20", 
 "city":"西安"
}
json数组
[ 
 "Name",
 "张三",
 "age",
 "20" 
]

二,QT中操作json的类

三,具体操作

  1, 首先,我们接受到了json数据data,我们就用QJsonDocument来将其转化为json文档doc

QJsonDocument doc = QJsonDocument::fromJson(data);

  2,判断接受的json是json对象还是json数组

 if(!doc.isObject())
    {
        qDebug()<<"not an object";
        QJsonArray jsonarr = doc.array();  //不是对象就用数组QJsonArray 接受
    }else{
        QJsonObject jsonObj = doc.object(); //是对象就用对象QJsonObject 接受
        qDebug()<<"json对象内容:"<<jsonObj;
    }

3,接收完毕后,是对象,那就用键值对提取需要的值,是数组,那就使用索引访问提取需要的值

4,可以将接收的数据放入在线的json解析工具,可以更好的知道自己接收的json的信息,也更方便知道自己要提取的值


http://www.kler.cn/a/288689.html

相关文章:

  • C# 委托与匿名方法
  • 数据结构-集合
  • 040 线程池
  • vue3 pdf base64转成文件流打开
  • 金价大跌,特朗普胜选或成导火索
  • 【Mode Management】AUTOSAR架构下唤醒源检测函数EcuM_CheckWakeup详解
  • Java注解基础入门
  • LiveQing视频点播流媒体RTMP推流服务功能-支持OBS推流摄像机RTMP推流支持无人机RTMP推流解决大疆无人机推流花屏问题完美解决大疆无人机花屏
  • Postgresql表和索引占用空间回收释放(表空间膨胀)
  • NTFS安全权限和文件共享
  • Ajax的$.post(),$.get(),$.ajax 方法请求都是默认异步请求
  • Python | Leetcode Python题解之第390题消除游戏
  • 3D Tiles的4x4的仿射变换矩阵
  • 计算机网络——ARP篇
  • 向沐神学习笔记:GPT,GPT-2,GPT-3 论文精读【论文精读】GPT部分
  • 4G手机智能遥控开关
  • Oracle查询预防解决分母为0的方法
  • 防御网站数据爬取:策略与实践
  • 基于FPGA实现SD NAND FLASH的SPI协议读写
  • 棋类游戏定制开发:步骤详解
  • ET6框架(七)Excel配置工具
  • 【数论 状态机dp】2572. 无平方子集计数
  • c++懒汉式单例模式(Singleton)多种实现方式及最优比较
  • laravel8快速开发简单博客系统(二)
  • HarmonyOS NEXT实战:“相机分段式拍照”性能提升实践
  • 深度学习100问11:什么是one-hot编码