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. TransactionScope 对该事务的状态无效 和一些注意事项

    使用TransactionScope 的时候要操作同一种数据库操作方式,不能一个方法用ado.net ,另外一个方法用EF,那样会报 "该事务管理器已经禁止了它对远程/网络事务的支持&quo ...

  2. C# - 系统类 - Array类

    Array类 ns:System Array是一个抽象类 表示数组 提供了创建.查找.删除.排序.修改等应用于数组的操作 此类没有公有的实例构造函数 可以使用静态方法CreateInstance创建A ...

  3. java注解研究

    注解作用 常见的作用有以下几种: 生成文档.这是最常见的,也是java 最早提供的注解.常用的有@see @param @return @author等. 跟踪代码依赖性,实现替代配置文件功能.比较常 ...

  4. Android开发百度地图(一)--显示基本地图

    最近由于比赛的需要,自己学习了一下百度地图的开发.希望以下的内容能够对大家有用. 一.开发前的准备工作: 1.注册百度账号,并登录.(有百度账号的话直接登录) 2.申请Key,地址:http://de ...

  5. maven项目转换成dynamic项目

    由于maven项目不能直接运行调试需要转换成danamic web后,才能方便进行调试测试.以下是maven项目进行转换的过程 第一步,选择project faces,设置dynamic web版本. ...

  6. 加快modelsim仿真速度的方法(原创)

    ①仿真精度越高,仿真效率月底. 仿真时采用`timescale 1ns/1ns比采用1ns/100ps的仿真效率高 simulation was two billion ns. ②clock gene ...

  7. 处理 eclipse 导入报错 Invalid project description,问题

    有时候在添加工程时,会出现如图所示的错误信息, ,提示显示将要添加的工程已经存在,但是在工作空间里却找不到,这个时候,要做就是, 在导入的时候选择General->Existing Projec ...

  8. jquery知识 内部 外部插入元素

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. Service层和DTO层的作用

    Service层主要提供的几个作用:1.将业务逻辑层进行封装,对外提供业务服务调用.2.通过外观模式,屏蔽业务逻辑内部方法.3.降低业务逻辑层与UI层的依赖,业务逻辑接口或实现的变化不会影像UI层.4 ...

  10. VS 2013 Chrome PPAPI 开发环境

    当前系统版本为 Windows 8.1 x64, Chrome 版本为 50.0 1. 准备工作 下载并安装 Python https://www.python.org/download/ * 必须使 ...