您的位置:首页 > 编程语言 > C语言/C++

初学c++使用json----jsoncpp

2016-11-28 22:23 549 查看
jsoncpp注意:

在 配置属性 -> C/C++ -> 代码生成 右边的“运行库” 选择 MTd,而/MTd”和“/clr”命令行选项不兼容导致了通过clr命令导入的webservice服务不能正常运行。

一 编译链接

1 在相应官网下载jsoncpp

2 解压得到jsoncpp-src-0.5.0文件

3 打开jsoncpp-src-0.5.0 -> makefiles -> vs71 -> jsoncpp.sln

4 转换项目为VS2010格式

5 选择debug模式

6 在“解决方案资源管理器”中右击 lib_json 选择->仅用于项目 -> 仅生成lib_json

7 再次右击 lib_json 选择->仅用于项目 -> 仅链接lib_json

8 选择release模式

9 重复操作 6 和 7

10 生成的.lib文件夹在jsoncpp-src-0.5.0 ->build -> vs71 中。

二 创建静态链接库SDK

1 在 D:\study\toolsForVS2010 (这里换成你自己想要放置静态链接库SDK的位置)中创建文件夹 jsonPP

2 在jsonPP中创建文件夹 include 和 lib

3 在include中创建文件夹 json ,将jsoncpp-src-0.5.0 -> include -> json 中的.h文件全部复制过来

4 在lib中创建文件夹debug和release ,把jsoncpp-src-0.5.0 ->build -> vs71 -> debug -> lib_json 中的.lib文件(比如json_vc71_libmtd.lib)复制到debug文件夹(此时可以修改文件夹名为json.lib),同理,把jsoncpp-src-0.5.0 ->build -> vs71 -> release -> lib_json 中的.lib文件(比如json_vc71_libmtd.lib)复制到release文件夹

三 打开要添加json的项目,或新建一个WIN32控制台程序(添加main.cpp,加入源代码,示例代码可在jsoncpp.sln的 json_test中找到)

1 选择 项目 ->属性

2 选择 配置属性 -> C/C++ -> 常规 右边的“附加包含目录” 添加include文件夹 :D:\study\toolsForVS2010\jsonPP\include

3 选择 配置属性 -> C/C++ -> 代码生成 右边的“运行库” 选择 MTd

4 选择 配置属性 -> 连接器 -> 常规 右边的“附加库目录” 添加lib文件夹 :D:\study\toolsForVS2010\jsonPP\lib\debug

5 选择 配置属性 -> 连接器 -> 输入 右边的“附加依赖项” 添加lib文件 :json_vc71_libmtd.lib(若在 二 - 4 中修改了文件名为json.lib,则此处改成json.lib)

6 点击应用完成json配置。

7 若项目需要发布时(即项目选择release),则

a. 选择 配置属性 -> C/C++ -> 代码生成 右边的“运行库” 选择MT

b. 选择 配置属性 -> 连接器 -> 常规 右边的“附加库目录” 添加lib文件夹 :D:\study\toolsForVS2010\jsonPP\lib\release

c. 然后可以运行程序获得release版本程序

使用代码举例:

// JsonDemo.cpp : 定义控制台应用程序的入口点。

#include "stdafx.h"
#include"json.h"

using namespace std;
using namespace Json;

int _tmain(int argc, _TCHAR* argv[])
{
Json::Reader reader;
Json::Value json_object;
const char* json_document = "{\"age\" : 26,\"name\" : \"123\"}";
if (!reader.parse(json_document, json_object))
return 0;
std::cout << json_object["name"] << std::endl;
std::cout << json_object["age"] << std::endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  json c++