参考自:https://www.cnblogs.com/liaocheng/p/4243731.html
https://www.cnblogs.com/hpcpp/p/7889456.html
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,和xml类似。
Jsoncpp是个跨平台的开源库,下载地址:http://sourceforge.net/projects/jsoncpp/。
jsoncpp 使用说明:
jsoncpp 主要包含三种类型的 class:Value、Reader、Writer。
jsoncpp 中所有对象、类名都在 namespace Json 中,包含 json.h 即可。
Json::Value 只能处理 ANSI 类型的字符串,如果 C++ 程序是用 Unicode 编码的,最好加一个 Adapt 类来适配。
编译:
- 解压下载好的文件:jsoncpp-src-0.5.0.tar.gz
- 利用VS打开jsoncpp-src-0.5.0\makefiles\vs71目录下的jsoncpp.sln,会出现三个Project:jsontest, lib_json, test_lib_json
- 检查设置:在lib_json上右击-->Properties-->Configuration Properties-->C/C++-->Code Generation,检查设置是否为RunTime Library 为MTD
- 切换配置中需要生成的平台,win32还是x64,debug版本还是release版本
关于MT/MTd/MD/MDd的选择参考下图:
以下示例是在VS2008中使用Jsoncpp解析json的方法做一下记录:
项目配置时注意:属性配置--> C++--> Code Generation -->RunTime Library 为 MTD,否则很多"LNK"错误