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

一,对json的初步认识

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

json对象

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

二,QT中操作json的类

QT教程-十六,QT中如何解析JSON_第1张图片

三,具体操作

  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对象内容:"<

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

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

你可能感兴趣的:(Qt开发基础教程,json,数据库)