Qt之json解析
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解析的更多相关文章
- C/C++ Qt 运用JSON解析库 [基础篇]
JSON是一种简单的轻量级数据交换格式,Qt库为JSON的相关操作提供了完整的类支持,使用JSON解析文件之前需要先通过TextStream流将文件读入到字符串变量内,然后再通过QJsonDocume ...
- Qt之JSON生成与解析
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式.它基于JavaScript(Standard ECMA-262 3rd Edition - December ...
- 【转载】Qt之JSON生成与解析
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式.它基于JavaScript(Standard ECMA-262 3rd Edition - December ...
- Qt on Android: http下载与Json解析
百度提供有查询 ip 归属地的开放接口,当你在搜索框中输入一个 ip 地址进行搜索,就会打开由 ip138 提供的百度框应用,你能够在框内直接输入 ip 地址查询.我查看了页面请求,提取出查询 ip ...
- Qt浅译:JSON Support in Qt(JSON只有六种数据类型)
JSON Support in Qt Qt5之后开始提供对处理JSON数据的支持,JSON是一种Interter数据交换的数据格式. JSON 用于存储结构化的数据,JSON有6种基本数据类型 ...
- JSON - Qt 对 JSON的处理
1.关于JSON的介绍参考www.json.org Qt提供处理JSON数据的支持.QJSonObject类用于封装JSON object:QJsonDocument类提供读写JSON文档的方法:QJ ...
- QJsonDocument实现Qt下JSON文档读写
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:QJsonDocument实现Qt下JSON文档读写 本文地址:http://tech ...
- Qt读写Json
Qt操作Json 1.QJsonDocument 1.详细说明 QJsonDocument类提供了读写JSON文档的方法. QJsonDocument是一个封装了完整JSON文档的类,可以从基于UTF ...
- Android okHttp网络请求之Json解析
前言: 前面两篇文章介绍了基于okHttp的post.get请求,以及文件的上传下载,今天主要介绍一下如何和Json解析一起使用?如何才能提高开发效率? okHttp相关文章地址: Android o ...
随机推荐
- jekyll bootstrap更改主题theme
使用主题 介绍: 由于JB版本号0.2.X的主题,如今全然是模块化的.他们跟踪和单独版本号的主题包. 这让每一个人都能够自由公布和共享主题. Jekyll-Bootstrap v 0.2.x仅仅附带t ...
- Safari浏览器Session问题
Safari浏览器中经常出现session无法写入或同一个会话中Session ID常变动的事情.尤其以iOS7版本居多. 问题本身并不难猜,应该就是cookie无法写入引起的.奇怪的是,部分同版本的 ...
- 基于x86架构的内核Demo的详细开发文档
http://hurlex.0xffffff.org/ 这里是hurlex这个基于x86架构的内核Demo的详细开发文档, 包含PDF文档和生成PDF的XeLaTex源码和文档每章节的阶段代码. 你可 ...
- 第一个html程序
<html><head><title> 表单</title> </head><body><form action=&quo ...
- 设置background属性使用selector的时候内置?attr报错的解决方案
当我们设置background属性的时候可以设置background="@color/black" 也可以设置 background="@drawable/selecto ...
- position定位问题
position属性规定了元素的定位类型,默认为static.该属性还可以有下值:absolute:生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位.fixed:生成绝对定位的 ...
- 关于js原型的面试题
今天遇到关于javascript原型的一道面试题,现分析下: 原题如下: function A(){ } function B(a){ this.a = a; } function C(a){ if( ...
- Android开发——避免内存泄露
本文翻译自Avoiding memory leak——Post by Romain Guy 著作权归原作者所有.转载请注明出处,由JohnTsai翻译 Android应用被分配的堆的大小限制为16MB ...
- struts1与struts2的区别
Struts2其实并不是一个陌生的Web框架,Struts2是以Webwork的设计思想为核心,吸收了Struts1的优点,因此,可以认为Struts2是Struts1和Webwork结合的产物. 简 ...
- 在网页中添加分享到微信、QQ、微博
参考地址:http://www.bshare.cn/help/installAction 在上面的地址中: 1.可选择分享到的位置,如QQ.微信.微博等 2.按钮的样式.悬浮或者以横幅的方式自己找位置 ...