zoukankan      html  css  js  c++  java
  • 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"}])

  • 相关阅读:
    【转】VB 技巧一
    VB中的trim()函数
    转:vb实现老板键功能
    VB为自己的程序设定消息(可接收处理)
    RegisterHotKey的具体使用方法
    GetPrivateProfileString
    在VB语言中,DOEVENTS的具体的用法和含义
    VB中的ADO数据对象编程
    jquery操作select下拉列表框
    jQuery对Select的操作集合
  • 原文地址:https://www.cnblogs.com/ike_li/p/6041528.html
Copyright © 2011-2022 走看看