VS2010中使用JSONCPP方法
来源:互联网 发布:数据作战室好用吗 编辑:程序博客网 时间:2024/05/18 02:25
下载jsoncpp后,按ReadMe文档的说法是要先安装的,但是安装比较麻烦。然而事实上,我们并不需要安装,就可以直接使用。
方法一:直接拷贝源文件。这个方法比较简单,但不推荐,因为不便于项目管理。
- VS2010里新建一个空的控制台程序(用作测试jsoncpp是否可用),名为: TestJSON
- 解压下载好的文件:jsoncpp-src-0.5.0.tar.gz
- 将 jsoncpp-src-0.5.0\include 目录下的json文件夹拷贝至 TestJSON 工程目录下
- 将 jsoncpp-src-0.5.0\src\lib_json 目录下的所有.h, .cpp 文件全部拷贝至 TestJSON 工程目录下
- 在VS201里引入工程目录下刚刚从 jsoncpp-src-0.5.0 导入的文件,如图1
- 在VS2010里新建main.cpp来测试jsoncpp是否可用。代码见文章末尾main.cpp
方法二:使用静态链接库
- VS2010里新建一个空的控制台程序(用作测试jsoncpp是否可用),名为: TestJSON
- 解压下载好的文件:jsoncpp-src-0.5.0.tar.gz
- 利用VS2010打开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的内容,如图2,看完箭头所指的东西就可以点确定,关掉属性页。
- 编译lib_json,显示编译成功后,在jsoncpp-src-0.5.0\build\vs71\debug\lib_json目录下会生成一个json_vc71_libmtd.lib,将这个lib拷贝至TestJSON工程目录下。
- 将jsoncpp-src-0.5.0\include\json目录下的所有.h文件拷贝至TestJSON工程目录下,并在工程Header Files引入.
- 将方法一里的main.cpp添加到工程中,并在工程名上 右击-->Properties-->Configuration Properties-->C/C++-->Code Generation, 将Runtime Library改成图2箭头所示内容。
- 在工程名上 右击-->Properties-->Configuration Properties-->Linker-->Input, 在Additional Dependencies里填写json_vc71_libmtd.lib,然后确定,编译就行了。
图1:
图2:
//测试DEMO
- #include <iostream>
- #include <string>
- #include "json\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;
- }
再来一个源码
- #include <iostream>
- #include <string>
- #include "json\json.h"
- int main(void)
- {
- //解析Json的方法
- Json::Value root;//表示一个json格式的对象
- Json::Value arrayObj;
- Json::Value item;
- for(int i=0;i<10;i++)
- {
- item["key"]=i;
- arrayObj.append(item);
- }
- root["key1"]="value1";
- root["key2"]="value2";
- root["array"]=arrayObj;
- std::string out=root.toStyledString();
- std::cout<<out<<std::endl;
- getchar();
- return 0;
- }
输出结果分别是:
DEMO1:
value1
value2
value3
value4
DEMO2:
{
"array" : [
{
"key" : 0
},
{
"key" : 1
},
{
"key" : 2
},
{
"key" : 3
},
{
"key" : 4
},
{
"key" : 5
},
{
"key" : 6
},
{
"key" : 7
},
{
"key" : 8
},
{
"key" : 9
}
],
"key1" : "value1",
"key2" : "value2"
}
源码下载:http://download.csdn.net/detail/opzoonzhuzhengke/3728120
转帖:http://blog.csdn.net/opzoonzhuzhengke/article/details/6913563
- VS2010中使用JSONCPP方法
- VS2010中使用JSONCPP方法
- VS2010中使用JSONCPP方法
- VS2008中使用JSONCPP方法小结
- VS2008中使用JSONCPP方法小结
- VS2008中使用JSONCPP方法小结
- VS2008中使用JSONCPP方法小结
- VS2008中使用JSONCPP方法小结
- vs2010中编译配置jsoncpp
- jsoncpp编译方法 和 vs2010中导入第三方库的方法
- jsoncpp在VS2010下的配置方法
- coco2dx中使用jsoncpp
- C++中使用JsonCpp
- C++解析json文件-VS2010中配置Jsoncpp
- jsoncpp中获取key的方法
- VS2008中使用JSONCPP方法修改版本能运行显示结果
- QtCreator 中使用jsoncpp解析json
- Linux中jsoncpp的安装和使用
- C#实现窗体圆角的一种方法
- 关于工程师氛围
- Smack for Android
- vs2008 注释模版
- 18款最值得推荐的免费视频编辑软件
- VS2010中使用JSONCPP方法
- MES 知识积累
- Struts 对 Ajax的支持
- 后院起火,在韩国三星不敌苹果
- Power Design 对SQL文件的导入导出操作
- 字符数组和字符指针间的操作
- js中的escape的用法汇总
- 如何管理不同的密码解决方案
- iphone开发必读的十二篇文章