JSON(JavaScript Object Notation)跟xml一样也是一种数据交换格式,了解json请参考其官网http://json.org,本文不再对json做介绍,将重点介绍c++的json解析库的使用方法。json官网上列出了各种语言对应的json解析库,作者仅介绍自己使用过的两种C++的json解析库:jsoncpp(v0.5.0)和Boost(v1.34.0)。
使用JsonCpp前先来熟悉几个主要的类:
Json::Value 可以表示里所有的类型,比如int,string,object,array等,具体应用将会在后边示例中介绍。
Json::Reader 将json文件流或字符串解析到Json::Value, 主要函数有Parse。
Json::Writer 与Json::Reader相反,将Json::Value转化成字符串流,注意它的两个子类:Json::FastWriter和Json::StyleWriter,分别输出不带格式的json和带格式的json。
主要包括:从字符串解析,从文件解析,写入文件,读取文件,输出json,读取json等!
环境配置:将解压下的库,头文件和lib添加到指定的位置(可以工程文件夹也可以是环境变量中);
编写 Makefile文件
测试文件和测试代码
测试文件:test.json
{
"uploadid": "UP000000",
"code": "0",
"msg": "",
"files":
[
{
"code": "0",
"msg": "",