我是靠谱客的博主 花痴小丸子,最近开发中收集的这篇文章主要介绍JsonCpp开源代码lib编译和文件直接放到项目使用,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

之前用的cJson类来做的json数据相关操作,后来接触到一些项目,知道了Jsoncpp这个开源跨平台库,觉得很不错,就想自己用源码试着写个测试例子

源码下载地址:

New homepage:
https://github.com/open-source-parsers/jsoncpp
Old homepage:
http://jsoncpp.sourceforge.net

方法一:使用Jsoncpp生成的lib文件

解压jsoncpp-master.zip,用VS2008打开jsoncpp-mastermakefilesvs71下面的jsoncpp.sln,然后直接编译,别人我不知道,我这边报很多错误,说我命名空间的的相关问题,我又不想去一行行的添加命名空间::符号,就试着用VS2010打开jsoncpp-mastermakefilesmsvc2010下面的jsoncpp.sln,直接编译,就成功了,我去,这下有点希望了,应该不至于要我一个个加了,然后对比了下VS2008好2010的项目配置,发现,下面那个配置这里禁用语言扩展改成否,编译直接成功了

 

然后编译运行测试例子,main函数加入测试下面这段代码,基本没什么问题了,其他详细用法,大家就网上找例子吧

注意:用的时候,Jsoncpp的lib工程编译选项要和VS工程中的编译选项保持一致。如lib文件工程编译选项为MT(或MTd),VS工程中也要选择MT(或MTd),否则会出现编译错误问题,debug和release下生成的lib文件名字不同,注意不要看错了,当成一个文件来使用,可用代码下载地址:https://download.csdn.net/download/u010340160/10789526

	const char* str = "{"uploadid": "UP000000","code": 100,"msg": "","files": ""}";  

	Json::Reader reader;  
	Json::Value root;  
	if (reader.parse(str, root))  // reader将Json字符串解析到root,root将包含Json里所有子元素  
	{  
		std::string upload_id = root["uploadid"].asString();  // 访问节点,upload_id = "UP000000"  
		int code = root["code"].asInt();    // 访问节点,code = 100 
	}  

  方法二:使用Jsoncpp包中的.cpp和.h文件放入项目中用

新建项目之后,将jsoncpp-masterincludejson下的json目录直接复制到项目目录下,将jsoncpp-mastersrclib_json下面的json_reader.cpp、json_tool.h、json_value.cpp、json_writer.cpp复制到项目目录下,然后项目解决方案中,直接将json目录下文件全部导入到头文件目录下,或者也可以自己新建一个筛选器,将头文件全部到入当前筛选器,然后将json_reader.cpp、json_tool.h、json_value.cpp、json_writer.cpp也分别到入进来,编译会出些问题,这时候c/c++/常规/附加包含目录,新增一个"."目录,是为了能不用去将<>的包含改成""include包含,然后预编译头设置为不使用预编译头,即可编译成功了

可用代码下载地址:https://download.csdn.net/download/u010340160/10789535

最后

以上就是花痴小丸子为你收集整理的JsonCpp开源代码lib编译和文件直接放到项目使用的全部内容,希望文章能够帮你解决JsonCpp开源代码lib编译和文件直接放到项目使用所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部