C++ 解析Json VC6 中编译、使用jsoncpp
关于VC6.0中如何编译jsoncpp,jsoncpp这个开源项目的地址是:https://github.com/open-source-parsers/jsoncppJSON是什么http://blog.csdn.net/hzyong_c/article/details/7163589参考了以下的这些文章http://www.it165.net/pro/html/201404/130
文章共8,311字 · 阅读需要大约28分钟
一键AI生成摘要,助你高效阅读
问答
·
关于VC6.0中如何编译jsoncpp,jsoncpp这个开源项目的地址是:https://github.com/open-source-parsers/jsoncpp
JSON是什么http://blog.csdn.net/hzyong_c/article/details/7163589
参考了以下的这些文章
http://www.it165.net/pro/html/201404/13024.html
http://www.cppblog.com/wanghaiguang/archive/2013/12/26/205020.aspx
http://blog.csdn.net/guowenyan001/article/details/10378195
在这里尤其感谢这篇博文的作者:
http://www.hack590.com/article-63.hack
第一步:VC6.0新建一个如下图所示:
第二步:将下载下来的“jsoncpp-master.zip”解压,如下图所示:
第三步:
a.复制jsoncpp目录中的,include/下的json目录到上面(第一步)的工程中,
b.复制jsoncpp目录中的src/lib_json中的文件到上面(第一步)的工程中,
第四步:
a.在工程中将第三步中的“a”中的文件添加到Header Files中,
b.在工程中将第三步中的“b”中的.cpp文件添加到Source Files中,
c.在工程中将第三步中的“b”中的除.cpp文件外全部添加到Header Files中。
最终的目录结构如下图所示 :
关于上图所说的clear()替换成erase的参考如下 :
http://wenwen.sogou.com/z/q152374200.htm
http://bbs.csdn.net/topics/360194977
第五步:运行编译,会有如下错误提示:
解决方法参见此博文
http://zhidao.baidu.com/link?url=54DsT9oOSAYPNk2xKVGU0EF34VydL_7yRZ6ekTcHdTm7DusTkW5-ZVgScDegVcZnButK8aw8H7MDyU_t2VRdpa
第六步:编译通过后,会在工程相对应下的Debug或Release中出现一个与工程名相同的xxx.lib文件。复制这个文件到需要使用JSON的工程将复制jsoncpp下的include/中的json文件夹到工程目录中,即可使用。如下图所示:
如何使用JSONcpp网上,有很多的例子,我这里就随便举个例子吧。
上面的例子,会有如下一些错误,
第一:
解决此问题的博文
http://zhidao.baidu.com/link?url=c7GRzrRzH3irTRI5ZcZ0dmvzW2gcgEGa91KOu2ticVMloaTND-CuKRhWLlgrClAga0H6jdAHDFSKI7Rd7NrYa_
http://social.msdn.microsoft.com/Forums/vstudio/en-US/5f7eed6d-236a-4cce-952a-b771abc3b9e9/why-cout-is-not-a-member-of-std?forum=vclanguage
JSON是什么http://blog.csdn.net/hzyong_c/article/details/7163589
参考了以下的这些文章
http://www.it165.net/pro/html/201404/13024.html
http://www.cppblog.com/wanghaiguang/archive/2013/12/26/205020.aspx
http://blog.csdn.net/guowenyan001/article/details/10378195
在这里尤其感谢这篇博文的作者:
http://www.hack590.com/article-63.hack
第一步:VC6.0新建一个如下图所示:
第二步:将下载下来的“jsoncpp-master.zip”解压,如下图所示:
第三步:
a.复制jsoncpp目录中的,include/下的json目录到上面(第一步)的工程中,
b.复制jsoncpp目录中的src/lib_json中的文件到上面(第一步)的工程中,
第四步:
a.在工程中将第三步中的“a”中的文件添加到Header Files中,
b.在工程中将第三步中的“b”中的.cpp文件添加到Source Files中,
c.在工程中将第三步中的“b”中的除.cpp文件外全部添加到Header Files中。
最终的目录结构如下图所示 :
关于上图所说的clear()替换成erase的参考如下 :
http://wenwen.sogou.com/z/q152374200.htm
http://bbs.csdn.net/topics/360194977
第五步:运行编译,会有如下错误提示:
解决方法参见此博文
http://zhidao.baidu.com/link?url=54DsT9oOSAYPNk2xKVGU0EF34VydL_7yRZ6ekTcHdTm7DusTkW5-ZVgScDegVcZnButK8aw8H7MDyU_t2VRdpa
第六步:编译通过后,会在工程相对应下的Debug或Release中出现一个与工程名相同的xxx.lib文件。复制这个文件到需要使用JSON的工程将复制jsoncpp下的include/中的json文件夹到工程目录中,即可使用。如下图所示:
如何使用JSONcpp网上,有很多的例子,我这里就随便举个例子吧。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include "stdafx.h"
// 注意此处的路径
#include "json/json.h"
// 注意此处的文件名后缀
#include <string>
#include <iostream>
#pragma comment(lib,"tJson.lib")
using namespace std;
int main(int argc, char* argv[])
{
std::string strValue = "{\"key1\":\"value1\",\"array\":[{\"key2\":\"value2\"},{\"key2\":\"value3\"},{\"key2\":\"value4\"}]}";
Json::Reader reader;
Json::Value value;
if (reader.parse(strValue, value))
{
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;
}
}
}
return 0;
}
|
上面的例子,会有如下一些错误,
第一:
解决此问题的博文
http://zhidao.baidu.com/link?url=c7GRzrRzH3irTRI5ZcZ0dmvzW2gcgEGa91KOu2ticVMloaTND-CuKRhWLlgrClAga0H6jdAHDFSKI7Rd7NrYa_
http://social.msdn.microsoft.com/Forums/vstudio/en-US/5f7eed6d-236a-4cce-952a-b771abc3b9e9/why-cout-is-not-a-member-of-std?forum=vclanguage
更多推荐
已为社区贡献1条内容
所有评论(0)