windows下 jsoncpp的编译和使用

来源:互联网 发布:网络前端设计师 编辑:程序博客网 时间:2024/06/05 10:33
  1. 解压下载好的文件:jsoncpp-src-0.5.0.tar.gz
  2. 利用VS2010打开jsoncpp-src-0.5.0\makefiles\vs71目录下的jsoncpp.sln,会出现三个Project:jsontest, lib_json, test_lib_json
  3. 在lib_json上右击-->Properties-->Configuration Properties-->C/C++-->Code Generation,设置RunTime  Library  为MTD
  4. 在jsoncpp-src-0.5.0\build\vs71\debug\lib_json目录下会生成一个json_vc71_libmtd.lib,将这个lib拷贝至TestJSON工程目录下。
  5. 将jsoncpp-src-0.5.0\include\json目录下的所有.h文件拷贝至TestJSON工程目录下,并在工程Header Files引入.
  6. 在TestJSON工程名上 右击-->Properties-->Configuration Properties-->C/C++-->Code Generation, 将Runtime Library设置为MTD。
  7. TestJson-->Properties-->Configuration Properties-->Linker-->Input, 在Additional Dependencies里填写json_vc71_libmtd.lib,然后确定,编译就行了。
  8. #include <iostream>#include <string>#include "json.h"int main(void){std::string strValue="{\"key1\":\"value1\",\"array\":[{\"key2\":\"value2\"},{\"key2\":\"value3\"},{\"key2\":\"value4\"}]}"; Json::Reader reader;//json解析Json::Value value;//表示一个json格式的对象if(reader.parse(strValue,value))//解析出json放到json中区{std::string out=value["key1"].asString();std::cout<<out<<std::endl;const Json::Value arrayObj=value["array"];//迭代器for (int i=0; i < arrayObj.size();i++)  {out=arrayObj[i]["key2"].asString();std::cout<<out;if(i!=arrayObj.size()-1)std::cout<<std::endl;;}}getchar();return 0;}


0 0
原创粉丝点击