ubuntu下C++两种方法解析json
2016-06-23 22:32
597 查看
第一种
用jsoncpp,不过本人目前不知道如何在clion里面使用,只知道在命令行g++使用,哪位知道如何在clion里使用可以告诉我,谢谢。
如下步骤本人操作过两边,所以按照下面操作应该不会有问题,如有需要请认真阅读。
一、配置jsoncpp需要安装scons,在下面的网址下载jsoncpp和scons
http://sourceforge.net/projects/jsoncpp/files/
http://sourceforge.net/projects/scons/files/scons/2.1.0/scons-2.1.0.tar.gz/download
二、下载完成后首先解压scon并配置,解压到任何你想要的文件夹,本人是新建了一个Json文件夹(-C是指定目录的意思)
然后进入该目录并安装scons,(scons-2.1.0是我解压后的文件夹名,可能大家的不是这个,要根据自己的修改)
三、解压jsoncpp后进入该目录配置
四、将/jsoncpp-src-0.5.0/include/目录下的json文件夹拷贝到/usr/include/,
然后将jsoncpp-src-0.5.0/libs/linux-gcc-4.9.1/目录下的libjson_linux-gcc-4.9.1_libmt.a 拷贝到/usr/local/lib/下,并为了方便使用,将其重命名为libjson.a
注意拷贝的时候可能会需要超级权限。
五、测试
test_json.cpp
编译:
完成后运行:
应该会输出一个数字1和名字。完毕。
第二种
使用RapidJson,该方法号称解析最快,并且不用安装,只需将头文件加入到自己的库即可。具体看链接,不在赘述。
用jsoncpp,不过本人目前不知道如何在clion里面使用,只知道在命令行g++使用,哪位知道如何在clion里使用可以告诉我,谢谢。
如下步骤本人操作过两边,所以按照下面操作应该不会有问题,如有需要请认真阅读。
一、配置jsoncpp需要安装scons,在下面的网址下载jsoncpp和scons
http://sourceforge.net/projects/jsoncpp/files/
http://sourceforge.net/projects/scons/files/scons/2.1.0/scons-2.1.0.tar.gz/download
二、下载完成后首先解压scon并配置,解压到任何你想要的文件夹,本人是新建了一个Json文件夹(-C是指定目录的意思)
tar -zvxf scons-2.1.0.tar.gz -C ~/Json
然后进入该目录并安装scons,(scons-2.1.0是我解压后的文件夹名,可能大家的不是这个,要根据自己的修改)
cd ~/Json/scons-2.1.0 sudo python setup.py install
三、解压jsoncpp后进入该目录配置
tar -zvxf jsoncpp-src-0.5.0.tar.gz -C ~/Json cd ~/Json/jsoncpp-src-0.5.0 sudo scons platform=linux-gcc
四、将/jsoncpp-src-0.5.0/include/目录下的json文件夹拷贝到/usr/include/,
然后将jsoncpp-src-0.5.0/libs/linux-gcc-4.9.1/目录下的libjson_linux-gcc-4.9.1_libmt.a 拷贝到/usr/local/lib/下,并为了方便使用,将其重命名为libjson.a
注意拷贝的时候可能会需要超级权限。
五、测试
test_json.cpp
#include<iostream> #include<json/json.h> using namespace std; int main() { string test="{\"id\":1,\"name\":\"kurama\"}"; Json::Reader reader; Json::Value value; if(reader.parse(test,value)) { if(!value["id"].isNull()) { cout<<value["id"].asInt()<<endl; cout<<value["name"].asString()<<endl; } } return 0; }
编译:
g++ test_json.cpp -o test_json.out -ljson
完成后运行:
./test_json.out
应该会输出一个数字1和名字。完毕。
第二种
使用RapidJson,该方法号称解析最快,并且不用安装,只需将头文件加入到自己的库即可。具体看链接,不在赘述。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- 关于指针的一些事情
- 使用 Python 处理 JSON 格式的数据
- XML 与 JSON 优劣对比
- c++ primer 第五版 笔记前言
- share_ptr的几个注意点
- VBA将excel数据表生成JSON文件
- newtonsoft.json解析天气数据出错解决方法
- Lua中调用C++函数示例
- Lua教程(一):在C++中嵌入Lua脚本
- Lua教程(二):C++和Lua相互传递数据示例
- vbs 解析json jsonp的方法
- Ruby和Ruby on Rails中解析JSON格式数据的实例教程
- C++联合体转换成C#结构的实现方法
- Extjs4如何处理后台json数据中日期和时间
- C#实现将类的内容写成JSON格式字符串的方法
- JQuery ajax返回JSON时的处理方式 (三种方式)
- jquery JSON的解析方式示例介绍
- c#版json数据解析示例分享
- ASP JSON类文件的使用方法