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字符串
随机推荐
- CCNA2.0笔记_路由相关
路由器的工作内容 -路由器知道目标地址 -发现到达目标地址的可能的路由 -选择最佳路径(路由表) -维护路由信息 路由的来源 直连路由:直接连到路由器上的网络 -初始化情况下,路由器所知的网络,只有其 ...
- Flask系列:数据库
这个系列是学习<Flask Web开发:基于Python的Web应用开发实战>的部分笔记 对于用户提交的信息,包括 账号.文章 等,需要能够将这些数据保存下来 持久存储的三种方法: 文件: ...
- vue render函数
基础 vue推荐在绝大多数情况下使用template来创建你的html.然而在一些场景中,你真的需要javascript的完全编程能力.这就是render函数.它比template更接近编译器 < ...
- winform 打印条码
一个winform打印功能的示例 操作步骤:1.新建winform项目及创建窗体2.拖取 打印 相关控件 PageSetupDialog . PrintDialog . PrintDocument . ...
- MapReduce编程实例3
MapReduce编程实例: MapReduce编程实例(一),详细介绍在集成环境中运行第一个MapReduce程序 WordCount及代码分析 MapReduce编程实例(二),计算学生平均成绩 ...
- 获取真实的IE版本(转)
IE 的浏览器模式和文本模式(二) 发表于 2013-09-07 Author: Jerry Qu 文章目录 判断真正的 IE 版本 JScript 引擎版本号 文本模式对 JScript 没影响? ...
- 数据库设计(七)第三范式(3NF)
In our last tutorial, we learned about the second normal form and even normalized our Score table in ...
- TDS协议解析
文章来自:http://freetds.cvs.sourceforge.net/*checkout*/freetds/freetds/doc/tds.html 该网站是免费的专门介绍TDS协议的,网址 ...
- 第二百一十三节,jQuery EasyUI,NumberBox(数值输入框)组件
jQuery EasyUI,NumberBox(数值输入框)组件 功能:只能输入数值,和各种数值的计算 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI ...
- 与HttpSessionListener接口有关的方法是。
与HttpSessionListener接口有关的方法是. A.sessionInitialized() B.sessionCreated() C.sessionFinialized() D.sess ...