我的主页

快递查询 :http://m.kuaidi100.com     爱快递查询 :http://www.aikuaidi.cn/              

http://www.qtcn.org/bbs/u/168050  [收藏] [复制]

w642833823

  • 10

    关注

  • 68

    粉丝

  • 42

    访客

  • 等级:新手上路
  • 总积分:43
  • 保密,2011-12-07

最后登录:2024-04-28

更多资料

日志

记录QTjson解析双层[[ "sas","是"]]  中字符的两种方法

2022-07-08 17:37
  1. QByteArray bytes = reply->readAll();  //获取字节
                QJsonParseError json_error;
                QJsonDocument jsonDoc(QJsonDocument::fromJson(bytes, &json_error));
                //格式化字符串
                QString str_json(jsonDoc.toJson(QJsonDocument::Indented));
                ui->textBrowser->setText(str_json);
第一种:
  1. QVariantMap dataList=jsonDoc.toVariant().toMap();
    // 提取第一层[]
                           foreach(QVariant data, dataList["trResult"].toList())
                           {

                               qDebug()<<"data对应>>"<<data.toMap();
                               //提取第二层
                               foreach(QVariant data2, data.toList())
                               {
                               QVariantMap linkMap2 = data2.toMap();

                               QString src=linkMap2["src"].toString();
                               qDebug()<<"src对应》》"<<src;
                               //歌曲名
                               QString tgt=linkMap2["tgt"].toString();
                               qDebug()<<src<<"对应是"<<tgt;
                              // ui->textEdit->setText(tgt);
                               }

                           }

第二种方式:
  1. QJsonObject rootObj = jsonDoc.object();
                           QJsonArray array = rootObj.value("teResult").toArray();
    //第一层

                                     foreach(QVariant data, array.toVariantList())
                                     {
                                         qDebug()<<"data对应》》"<<data;
    //第二层

                                         foreach(QVariant data2, data.toList())
                                         {
                                         QVariantMap linkMap2 = data2.toMap();

                                         QString src=linkMap2["src"].toString();
                                         qDebug()<<"src对应》》"<<src;
                                         //歌曲名
                                         QString tgt=linkMap2["tgt"].toString();
                                         qDebug()<<src<<"对应的是"<<tgt;
                                        // ui->textEdit->setText(tgt);
                                         }
                                     }



分类:默认分类|回复:0|浏览:542|全站可见|转载
 

Powered by phpwind v8.7 Certificate Copyright Time now is:04-28 21:59
©2005-2016 QTCN开发网 版权所有 Gzip disabled