JSON 官方的解釋為:JSON 是一種輕量級的數據傳輸格式。
關於 JSON 更具體的信息,可參見 JSON 官網:http://www.json.org。
jsoncpp 是比較出名的 C++ JSON 解析庫。在 JSON 官網也是首推的。
下載地址為:http://sourceforge.net/projects/jsoncpp(版本為jsoncpp-src-0.5.0)。
下面開始說明配置方法:
1、先下載scons:(http://www.scons.org/)(版本為scons-2.1.0)並解壓;
設定環境變量 # export MYSCONS=解壓的路徑
2、scons部署:進入scons解壓目錄(假定為$MYSCONS),執行python $MYSCONS/setup.py install將scons部署完畢。
3、使用scons編譯jsoncpp(版本為jsoncpp-src-0.5.0)
進入jsoncpp解壓目錄,執行命令: # python $MYSCONS/script/scons.py platform=linux-gcc
將jsoncpp編譯,在解壓目錄jsoncpp-src-0.5.0/libs/linux-gcc-3.4.6下可以看到生成了兩個文件:
libjson_linux-gcc-4.6.1_libmt.a
libjson_linux-gcc-4.6.1_libmt.so
把.a文件拷貝到/usr/local/lib 目錄下,為了方便編譯給它改個名字libjsonlib.a
4、將jsoncpp目錄下的頭文件件拷到自己的工程里就可以使用了。
注意在編譯里指定動態鏈接庫的地址。 -ljsonlib
例子代碼:
#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"}