windows下 jsoncpp的编译和使用

  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;
    }
    


  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值