Jsoner::Jsoner(QObject *parent) : QObject(parent)
{
    QJsonObject json;
    json.insert("loginname", QString("movdotest01"));
    json.insert("email", QString("movdotest01@sobey.com"));
    json.insert("mobile", 18900000000);
    json.insert("password",QString("123456"));
    json.insert("source",QString("movdo"));
    json.insert("regip",QString("172.16.137.9"));

QJsonObject json_son;
    json_son.insert("ss1","1");
    json_son.insert("ss2","2");
    json.insert("son1",json_son);

QJsonDocument document;
    document.setObject(json);
    QByteArray byte_array = document.toJson(QJsonDocument::Indented);
    QString json_str(byte_array);
    qDebug("Json Result is :\n%s\n",json_str.toStdString().c_str());

if(json.contains(QString("son1")))
    {
        qDebug("gread\n");
        QJsonObject sonObj=json.take(QString("son1")).toObject();
        if(sonObj.contains("ss1"))
            qDebug("gread222\n");
        else
            qDebug("hehe222\n");
    }
    else
        qDebug("hehe\n");
}

void MainWindow::on_pushButton_clicked()
{
//    jsonObject.put("abs", "1");
//    jsonObject.put("des", "20150804_094727492.mp4");
//    jsonObject.put("name", "123321");
//    jsonObject.put("notes", "123321");
//    jsonObject.put("result", true);
//    jsonObject.put("size", "3804783");
//    jsonObject.put("src", "/home/jixiang/视频/20150804_094727492.mp4");
//    files.put(0, jsonObject);
//    jsonObj.put("files",files);

QJsonObject json;
    json.insert("catalog", 3404);
    json.insert("op","mobilefinished");
    json.insert("path","/2015/08/18/20");
    json.insert("usertoken","dsa");
    json.insert("ip","181.40.20.165");

QJsonObject jsonSon;
    jsonSon.insert("abs",1);
    jsonSon.insert("des","ff7adec1fcb74d24b43e42727c39cf02_meipai_20140912111850.mp4");
    jsonSon.insert("name","20150804_094727492.mp4");
    jsonSon.insert("result",true);
    jsonSon.insert("size",3804783);
    jsonSon.insert("src","/home/jixiang/视频/20150804_094727492.mp4");

QJsonArray jsonarr;
    jsonarr.insert(0,jsonSon);

//    QJsonDocument document;
//    document.setArray(jsonarr);
//    QByteArray byte_array2 = document.toJson(QJsonDocument::Compact);
//    QString json_str2(byte_array2);

//    jsonArray.push_back(jsonSon);
//    jsonArra
    json.insert("files",jsonarr);

QJsonDocument document;
    document.setObject(json);
    QByteArray byte_array = document.toJson(QJsonDocument::Indented);
    QString json_str(byte_array);
    qDebug("Json Result is :\n%s\n",json_str.toStdString().c_str());

QString qstrUri("http://api.yiqibian.com");
    HttperADK httper;
    QString recive = httper.Httper(qstrUri, json_str);
    qDebug("recive: %s", recive.toStdString().c_str());

QString curPath;
    curPath=QCoreApplication::applicationDirPath();
#ifdef Q_OS_ANDROID
    curPath="/mnt/sdcard/movdo";
#endif
    curPath+=QDir::separator();
    curPath+="cache";

QDir d1;
   if(d1.setCurrent(curPath))
   {
       QFile file("test.html");
       if (!file.open(QIODevice::WriteOnly))
           return;
       else
           file.write(recive.toStdString().c_str());
   }

ui->textBrowser->setHtml(recive);
}

Qt之json解析的更多相关文章

  1. C/C++ Qt 运用JSON解析库 [基础篇]

    JSON是一种简单的轻量级数据交换格式,Qt库为JSON的相关操作提供了完整的类支持,使用JSON解析文件之前需要先通过TextStream流将文件读入到字符串变量内,然后再通过QJsonDocume ...

  2. Qt之JSON生成与解析

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式.它基于JavaScript(Standard ECMA-262 3rd Edition - December ...

  3. 【转载】Qt之JSON生成与解析

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式.它基于JavaScript(Standard ECMA-262 3rd Edition - December ...

  4. Qt on Android: http下载与Json解析

    百度提供有查询 ip 归属地的开放接口,当你在搜索框中输入一个 ip 地址进行搜索,就会打开由 ip138 提供的百度框应用,你能够在框内直接输入 ip 地址查询.我查看了页面请求,提取出查询 ip ...

  5. Qt浅译:JSON Support in Qt(JSON只有六种数据类型)

    JSON Support in Qt   Qt5之后开始提供对处理JSON数据的支持,JSON是一种Interter数据交换的数据格式.   JSON 用于存储结构化的数据,JSON有6种基本数据类型 ...

  6. JSON - Qt 对 JSON的处理

    1.关于JSON的介绍参考www.json.org Qt提供处理JSON数据的支持.QJSonObject类用于封装JSON object:QJsonDocument类提供读写JSON文档的方法:QJ ...

  7. QJsonDocument实现Qt下JSON文档读写

    版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:QJsonDocument实现Qt下JSON文档读写     本文地址:http://tech ...

  8. Qt读写Json

    Qt操作Json 1.QJsonDocument 1.详细说明 QJsonDocument类提供了读写JSON文档的方法. QJsonDocument是一个封装了完整JSON文档的类,可以从基于UTF ...

  9. Android okHttp网络请求之Json解析

    前言: 前面两篇文章介绍了基于okHttp的post.get请求,以及文件的上传下载,今天主要介绍一下如何和Json解析一起使用?如何才能提高开发效率? okHttp相关文章地址: Android o ...

随机推荐

  1. jekyll bootstrap更改主题theme

    使用主题 介绍: 由于JB版本号0.2.X的主题,如今全然是模块化的.他们跟踪和单独版本号的主题包. 这让每一个人都能够自由公布和共享主题. Jekyll-Bootstrap v 0.2.x仅仅附带t ...

  2. Safari浏览器Session问题

    Safari浏览器中经常出现session无法写入或同一个会话中Session ID常变动的事情.尤其以iOS7版本居多. 问题本身并不难猜,应该就是cookie无法写入引起的.奇怪的是,部分同版本的 ...

  3. 基于x86架构的内核Demo的详细开发文档

    http://hurlex.0xffffff.org/ 这里是hurlex这个基于x86架构的内核Demo的详细开发文档, 包含PDF文档和生成PDF的XeLaTex源码和文档每章节的阶段代码. 你可 ...

  4. 第一个html程序

    <html><head><title> 表单</title> </head><body><form action=&quo ...

  5. 设置background属性使用selector的时候内置?attr报错的解决方案

    当我们设置background属性的时候可以设置background="@color/black" 也可以设置 background="@drawable/selecto ...

  6. position定位问题

    position属性规定了元素的定位类型,默认为static.该属性还可以有下值:absolute:生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位.fixed:生成绝对定位的 ...

  7. 关于js原型的面试题

    今天遇到关于javascript原型的一道面试题,现分析下: 原题如下: function A(){ } function B(a){ this.a = a; } function C(a){ if( ...

  8. Android开发——避免内存泄露

    本文翻译自Avoiding memory leak——Post by Romain Guy 著作权归原作者所有.转载请注明出处,由JohnTsai翻译 Android应用被分配的堆的大小限制为16MB ...

  9. struts1与struts2的区别

    Struts2其实并不是一个陌生的Web框架,Struts2是以Webwork的设计思想为核心,吸收了Struts1的优点,因此,可以认为Struts2是Struts1和Webwork结合的产物. 简 ...

  10. 在网页中添加分享到微信、QQ、微博

    参考地址:http://www.bshare.cn/help/installAction 在上面的地址中: 1.可选择分享到的位置,如QQ.微信.微博等 2.按钮的样式.悬浮或者以横幅的方式自己找位置 ...