JSON 官方的解释为:JSON 是一种轻量级的数据传输格式。python
关于 JSON 更具体的信息,可参见 JSON 官网:http://www.json.org。linux
jsoncpp 是比较出名的 C++ JSON 解析库。在 JSON 官网也是首推的。ios
下载地址为:http://sourceforge.net/projects/jsoncpp。json
下面开始说明配置方法:spa
一、jsoncpp下载后须要编译成连接库(也能够不编译,把全部.cpp .h文件加入到本身的工程中。这种方法不易管理,不推荐),.net
编译jsoncpp须要使用scons。那么先下载scons。(http://www.scons.org/)orm
二、scons部署(版本为scons-2.1.0.zip)ip
进入scons解压目录(假定为$MYSCONS),执行python $MYSCONS/setup.py将scons部署完毕。ci
三、使用scons编译jsoncpp(版本为jsoncpp-src-0.5.0.tar.gz)部署
进入jsoncpp解压目录,执行命令:python $MYSCONS/script/scons.py platform=linux-gcc
将jsoncpp编译,在解压目录jsoncpp-src-0.5.0/libs/linux-gcc-3.4.6下能够看到生成了两个文件:
libjson_linux-gcc-3.4.6_libmt.a
libjson_linux-gcc-3.4.6_libmt.so
修改环境变量LD_LIBRARY_PATH,将该库所在的目录加入。
四、将jsoncpp目录下的头文件件拷到本身的工程里就能够使用了。
注意在编译里指定动态连接库的地址。-L/jsoncpp-src-0.5.0/libs/linux-gcc-3.4.6/ -ljson_linux-gcc-3.4.6_libmt
例子代码:
#include <iostream>
#include <string>
#include "json/json.h"
int main(void)
{
Json::Value root;
Json::FastWriter fast_writer;
root["REGION_ID"] = "600901";
root["DATA_TOTAL_NUM"] = "456278";
std::cout << fast_writer.write(root) << std::endl;
return 0;
}
输出:{"DATA_TOTAL_NUM":"456278","REGION_ID":"600901"}