下载
jsoncpp下载位置:
GitHub - open-source-parsers/jsoncpp: A C++ library for interacting with JSON.
编译库
1、下载完成之后解压
2、在解压文件的makefiles文件下有个vs71,在vs71中有visual studio项目,不过这里的项目是visual studio2008写的,这里打开之前需要升级。
![](https://img-blog.csdnimg.cn/direct/fc50d62fa10545f3959cd01e0b8a01a1.png)
升级完成之后,选中lib_json文件夹进行配置,生成想要的库文件。下边是我自己的配置信息。配完之后,点击应用再确定。
![](https://img-blog.csdnimg.cn/direct/399ca6297547407ba6483d4e4857de49.png)
配置完成之后,选择lib_json文件夹进行编译。
![](https://img-blog.csdnimg.cn/direct/09e5e0e97de24c42966f5158d70dda1f.png)
生成的库文件位置如下
![](https://img-blog.csdnimg.cn/direct/51e3db5b05fe42c38c11068354810a62.png)
管理库和头文件
新建libjson文件,在下边文件中创建bin和include文件夹,分别用于管理头文件和库
![](https://img-blog.csdnimg.cn/direct/3c7150f8795d44ce915b1e495840ded7.png)
将解压文件夹下的json文件夹拷贝至新建libjson文件下的include目录,下边是json文件的位置
![](https://img-blog.csdnimg.cn/direct/5bb769314280418f87dbdc5aa055aaa4.png)
将编译的库文件拷贝至新建文件夹得bin目录,下边是生成库文件得位置
![](https://img-blog.csdnimg.cn/direct/86a39b5e75fe4c7a88ca92f1a23a5b8b.png)
配置visual studio
配置包含目录和库文件目录
![](https://img-blog.csdnimg.cn/direct/f9082b254b13440eadc1c28e8441f3ab.png)
配置运行时库类型,我刚刚生成库文件的时候选择的MTd类型,所以现在也要选MTd类型
![](https://img-blog.csdnimg.cn/direct/fff2c3dbc6104274aa43528b930c8ee5.png)
添加链接库,json_vc71_libmtd.lib
![](https://img-blog.csdnimg.cn/direct/e5587f7776bf418baace7add613cd261.png)
使用jsoncpp
cpp
#include <iostream>
#include <json/json.h>
#include <json/value.h>
#include <json/reader.h>
int main()
{
//std::cout << "Hello World!\n";
Json::Value root;
root["id"] = 1001;
root["data"] = "hello world";
std::string request = root.toStyledString();
std::cout << "request is " << request << std::endl;
Json::Value root2;
Json::Reader reader;
reader.parse(request, root2);
std::cout << "msg id is " << root2["id"] << " msg is " << root2["data"] << std::endl;
}
运行效果如下:
![](https://img-blog.csdnimg.cn/direct/aa3b9cc9812a44a9a24d92a49658da2e.png)