QT解析嵌套JSON表达式
QT5开发环境集成了解析JSON表达式的库。使用很方便。
友情提示一下,好像在QT4环境里。须要到官网下载相关的库文件才干使用解析功能。话不多说,上代码
1、在pro文件里增加
QT += script
2、增加头文件
#include <QtScript/QScriptEngine>
3、在须要解析的地方增加例如以下代码:
比如须要解析的JSON表达式为:
解析代码为:
void MainWindow::replyFinished(QNetworkReply * reply)
{
QByteArray data = reply->readAll();
QString str(data);
QMessageBox::information(this, "reslut", str);
QScriptEngine engine;
QScriptValue sc = engine.evaluate("value=" + str);
if(sc.property("errorCode").toString()!= "0")
{
QMessageBox::information(this, "错误", "查询出现错误,请又一次查询!");
return ;
}
//外层JSOM表达式,翻译结果
this->ui->outEdit->setText(sc.property("translation").toString());
//第二层JSON表达式。网络延伸
QScriptValue subsc = sc.property("web");
QScriptValue subsc1 = subsc.property(0);
QScriptValue subsc2 = subsc.property(1);
QScriptValue subsc3 = subsc.property(2);
this->ui->extendEdit->setText(subsc1.property("key").toString()+":");
this->ui->extendEdit->append(subsc1.property("value").toString());
this->ui->extendEdit->append(subsc2.property("key").toString()+":");
this->ui->extendEdit->append(subsc2.property("value").toString());
this->ui->extendEdit->append(subsc3.property("key").toString()+":");
this->ui->extendEdit->append(subsc3.property("value").toString());
}
结果如图:
QT解析嵌套JSON表达式的更多相关文章
- 复习解析嵌套json
在网络上找的一些经典的例子复习使用 一,解析嵌套json字符串,一个json字符串中嵌套另一个json字符串 { "msg": { "resCode": &qu ...
- 【golang】json数据解析 - 嵌套json解析
@ 目录 1. 通过结构体映射解析 2. 嵌套json解析-map 1. 通过结构体映射解析 原数据结构 解析 // 结构体 type contractJson struct { Data []tra ...
- .net 解析嵌套JSON
JSON格式文件如下:我们是要取出msgJsoncontent里面GeneralReportInfo下serviceData中的totalUseValue数据 { ", "mess ...
- 解析嵌套json字符串,一个json字符串中嵌套另一个json字符串
我现在有一个字符串是这样: { "msg": { ", "attrName": "sensorData", "trans ...
- QT解析和组装json
json这个小朋友熟悉又陌生,今天给同学们好好讲讲QT是如何使用json的,一句话:简单 1.什么是json? A:json就是个<key,value>字符串 ①一个json对象 {&qu ...
- Android利用Gson解析嵌套多层的Json
参考:http://www.cnblogs.com/jxgxy/p/3677256.html 比如我们要解析一个下面这种的Json: String json = {"a":&quo ...
- C# 解析嵌套的json文件.
概述 今天我同学问我如何转换json文件,没处理过,网上搜了一下,json转excel的很少,反过来倒是有许多人写了工具. json文件的结构大致是这样的: {, , }, , "type& ...
- Qt解析Json数据
1 JSON数据简介 JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范) ...
- 【Java_Spring】java解析多层嵌套json字符串
java解析多层嵌套json字符串
随机推荐
- 关于linux PPA源问题
添加PPA: 1.首先进入ubuntu系统,system—>administration—>update manager—>setting,在软件源界面,点击other softwa ...
- scrapy-redis源代码分析
原创文章,链接:http://blog.csdn.net/u012150179/article/details/38226253 + (I) connection.py 负责依据setting ...
- OpenERP report doesn't work
1. When you have used OpenOffice edited one of reports,it has stored the report's banary data is da ...
- Control character in cookie value or attribute
在cookie中添加中文导致静态页面打不开, (1)先清除缓存 (2)使用escape()函数对中文进行编码,获取的时候在对中文进行解码unescape(). cookie.Set("sto ...
- 第二百四十二节,Bootstrap列表组面板和嵌入组件
Bootstrap列表组面板和嵌入组件 学习要点: 1.列表组组件 2.面板组件 3.响应式嵌入组件 本节课我们主要学习一下 Bootstrap 的三个组件功能:列表组组件.面板组件. 响应 式嵌入组 ...
- js阻止事件冒泡和标签默认行为
////阻止事件冒泡函数和 // 阻止默认浏览器动作(W3C) 要一起使用效果好<a href="/Scripts/newfiber_js_lib/images/1.jpg" ...
- JZOJ.5273【NOIP2017模拟8.14】亲戚
Description
- iOS Search bar 输入空字符串也可以搜索
Search bar delegate - (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar { UITextField *sea ...
- cannot be cast to javax.servletFilter
java.lang.ClassCastException: org.springframework.web.filter.CharacterEncodingFilter cannot be cast ...
- JavaWeb项目中文乱码问题
1.从浏览器读数据乱码(post 请求方式) 前提是前端页面是UTF-8编码,因为服务器端默认采用ISO解码,所以乱码,在读取前加上: request.setCharacterEncoding(&qu ...