博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Qt 4.8.5 jsoncpp lib
阅读量:6258 次
发布时间:2019-06-22

本文共 2348 字,大约阅读时间需要 7 分钟。

Qt 4.8.5 jsoncpp lib  一、参考文档:    1. QtCreator动态编译jsoncpp完美支持x86和arm平台        http://www.linuxidc.com/Linux/2012-02/53678.htm    2. Jsoncpp的使用        http://www.cnblogs.com/kex1n/archive/2011/12/02/2272328.html二、Drownload jsoncpp open source:    经过测试,尽量下载参考文档1里的源代码,我从github上下载最新的版本,在我的Qt 4.8.5    上面编译会出问题,而使用参考文档里的源代码没有问题。三、使用流程:    1. 将include/json里面所有文件复制到刚刚新建的json文件夹里(共8个文件,全部是.h的头文件);    2. 将src/lib_json里面的所有文件全部复制到json文件里,共8个文件;    3. 通过复制这些文件,就组成了我们所要的JSON库的全部源代码了。完整的文件清单见下面:        autolink.h        config.h        features.h        forwards.h        json_batchallocator.h        json.h        json_internalarray.inl        json_internalmap.inl        json_reader.cpp        json_value.cpp        json_valueiterator.inl        json_writer.cpp        reader.h        sconscript        value.h        writer.h    4. 把刚刚准备好的JSON库,复制到项目的同一目录下;    5. 在需要用到json解析的文件中引入Json库:#include "json/json.h";    6. 参考《参考文档》中的例子进行测试。四、Test Demo:    #include "mainwindow.h"    #include "ui_mainwindow.h"    #include "unistd.h"    #include "json/json.h"        MainWindow::MainWindow(QWidget *parent) :        QMainWindow(parent),        ui(new Ui::MainWindow)    {        ui->setupUi(this);        using namespace std;        std::string strVale = "{\"number\":\"13\",\"name\":\"zeng\", \"age\":\"34\"}";            ui->parseString->setText(QString::fromStdString(strVale));    }        MainWindow::~MainWindow()    {        delete ui;    }        void MainWindow::on_parse_clicked()    {        using namespace std;        Json::Reader reader;        Json::Value value;        if ( reader.parse(ui->parseString->toPlainText().toStdString(), value)) {            ui->number->setText(QString::fromStdString(value["number"].asString()));            ui->name->setText(QString::fromStdString(value["name"].asString()));            ui->age->setText(QString::fromStdString(value["age"].asString()));        }        }        void MainWindow::on_synthetic_clicked()    {        Json::FastWriter writer;        Json::Value person;            person["number"] = "111";        person["name"] = "zengjf";        person["age"] = "100";            std::string jsontofile = writer.write(person);            ui->parseString->setText(QString::fromStdString(jsontofile));    }        void MainWindow::on_pushButton_clicked()    {        ui->parseString->setText("");    }

 

你可能感兴趣的文章
国内外MD5在线解密网站
查看>>
【OC语法要闻速览】一、方法调用
查看>>
Git-命令行-删除本地和远程分支
查看>>
本文将介绍“数据计算”环节中常用的三种分布式计算组件——Hadoop、Storm以及Spark。...
查看>>
顺序图【6】--☆☆
查看>>
Docker Swarm 让你事半功倍
查看>>
[转]IC行业的牛人
查看>>
javaScript事件(四)event的公共成员(属性和方法)
查看>>
linux系统常用命令
查看>>
在 Word 中的受支持的区域设置标识符的列表
查看>>
Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明2
查看>>
An easy to use android color picker library
查看>>
Oracle SID爆破工具SidGuess
查看>>
批处理常用命令总结2
查看>>
解读ASP.NET 5 & MVC6系列(9):日志框架
查看>>
Android -- 自定义View小Demo,绘制钟表时间(一)
查看>>
信息检索Reading List
查看>>
JavaWeb_JavaEE_命名规则
查看>>
申小雨命案审理延期至3月5日 警方将翻译嫌犯口供
查看>>
自动精简配置&重复数据删除核心技术点及其经济效应探究
查看>>