libjson 编译和使用 - 2. 配置使用lib文件
来源:互联网 发布:htc手机移动网络不可用 编辑:程序博客网 时间:2024/05/19 22:52
继续上一篇编译后我们这次来讲怎么配置使用刚生产的lib文件。
1. 在之前的libjson所在的解决方案里新建一个控制台应用程序,叫TestLibjson。
2. 右键TestLibjson项目,选择属性。按下图设置导入libjson的头文件。(虽然我们已经编译成lib库文件,但我们还是要在我们的项目里加入头文件。)
3. 在属性里加入刚刚生产的libjson.lib文件。如下图设置。
好了,配置设置好了,接下来我们写写测试代码
首先新建下列文.h和.cpp文件
在TestLibjson.h文件加入以下代码。
#include "libjson.h"class TestLibjson{public:TestLibjson();void ParseJSON(JSONNODE *n);};
在TestLibjson.cpp文件加入代码。
// TestLibjson.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <stdlib.h>#include "TestLibjson.h"#include "libjson.h"TestLibjson::TestLibjson()//构造函数{}void TestLibjson::ParseJSON(JSONNODE *n){//解析json文件 if (n == NULL){ printf("Invalid JSON Node\n"); return; } JSONNODE_ITERATOR i = json_begin(n); while (i != json_end(n)){ if (*i == NULL){ printf("Invalid JSON Node\n"); return; } // recursively call ourselves to dig deeper into the tree if (json_type(*i) == JSON_ARRAY || json_type(*i) == JSON_NODE){ ParseJSON(*i); } // get the node name and value as a string json_char *node_name = json_name(*i); // find out where to store the values if (strcmp(node_name, "RootA") == 0){ json_char *node_value = json_as_string(*i);printf("rootA: %s\n", node_value); json_free(node_value); } else if (strcmp(node_name, "ChildA") == 0){ json_char *node_value = json_as_string(*i);printf("ChildA: %s\n", node_value); json_free(node_value); } else if (strcmp(node_name, "ChildB") == 0)printf("childB: %d\n", json_as_int(*i)); // cleanup and increment the iterator json_free(node_name); ++i; }system("pause");}int _tmain()//程序入口{char *json = "{\"RootA\":\"Value in parent node\",\"ChildNode\":{\"ChildA\":\"String Value\",\"ChildB\":42}}";JSONNODE *n = json_parse(json);TestLibjson tl = TestLibjson();tl.ParseJSON(n);json_delete(n);return 0;}运行结果
注意,这里我们用的的libjson的Debug模式,如果你用的是release模式,那你还需要设置libOption.h文件,把它的#define JSON_DEBUG 注释掉。
下一篇:libjson 编译和使用 - 3. libjson的C接口 API
- libjson 编译和使用 - 2. 配置使用lib文件
- libjson编译和使用
- libjson 编译和使用 - 3. libjson的C接口 API
- libjson 编译和使用 - 1. 编译
- libjson 编译和使用 - 1. 编译
- JSON格式解析和libjson使用简介
- libjson使用详解(linux和windows)
- JSON格式解析和libjson使用简介
- libjson的使用问题
- libjson的使用
- 使用curl 和 libjson 完成联网和数据解析
- JSON格式解析和libjson使用简介(cJSON)
- JSON格式解析和libjson使用简介(cJson格式)
- JSON格式解析和libjson使用简介-转
- JSON格式解析和libjson使用简介(cJson格式)
- JSON学习笔记(格式/第三方库jsonCpp与libJson的配置和使用) cocos2d-x
- JSON学习笔记(格式/第三方库jsonCpp与libJson的配置和使用) cocos2d-x
- windows xp 使用编译好的live555的lib和头文件
- 分水岭算法原理
- C/C++基础知识:函数指针和指针函数的基本概念
- HierarchyViewer 使用
- 第13周项目-汉诺塔
- 简单题 ( hdu2114 )
- libjson 编译和使用 - 2. 配置使用lib文件
- 回顾:字符数据在内存中的存储形式以及其使用方法
- Btrace User Guide
- 介绍Smart Client组件网站
- Android实现解析XML文件
- poj 3628 01背包问题
- C/C++数组名与指针区别深层探索
- 小米盒子被禁-多屏互动标准Wifi Display可以解救小米之痛
- 解析后存储数据库