大佬教程收集整理的这篇文章主要介绍了Cocos2dx2.2.1 jsoncpp 解析json数据,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
jsoncpp 解析json数据
附:#include "Cocostudio/Json/lib_json/json_lib.h"
1.添加jsoncpp库的包含目录(引入头文件.h)
右击项目->属性->(C\C++常规)->附加包含目录(有编辑框下拉"编辑")->##\jsoncpp\include\json;
2.添加jsoncpp库的库目录
右击项目->属性->(连接器)常规->附加包含目录(有编辑框下拉"编辑")->##\jsoncpp\lib;
3.把库名称添加到附加依赖项
右击项目->属性->(连接器)输入->附加依赖项(有编辑框下拉"编辑")->json_vc71_libmtd.lib;
Code
引入头文件
#include "json.h" #include <String> using namespace std;
校验Code
//--------------name-start Json::FastWriter write; Json::reader reader; 创建JSON数据 ------先定义数据 Json::Value map; map[name"]=Chen"; map[age24; ------编码成json数据 String jsonData =write.write(map); CCLOG(jsonData:%s",jsonData.c_str()); 打印结果 Cocos2d: jsonData:{"age":23,"name":"Himi"} 解析JSON数据 --先将数据解析到 Value(parseData)中 Json::Value parseData; reader.parse(jsonData,parseData); Json::Value valuename = default"; Json::Value valueAge = -1; valuename = parseData.get(:rgb(128,valueName); valueAge = parseData.:rgb(0,valueAgE); const char* nameStr =valuename.asCString() ; int age = valueAge.asInt(); CCLOG(name:%s,age:%d:rgb(128,nameStr,agE); 打印结果:Cocos2d: name:Himi,age:23 使用get函数时,第一个参数是key的名, 第二个参数是如果找不到对应key的默认Value 举例我们将name和age,故意写错: Json::Value parseData; reader.parse(jsonData,parseData); // Json::Value valuename = "默认"; Json::Value valueAge = -1; valuename = parseData.get("nameHimi",valueName); valueAge = parseData.get("ageHimi",valueAgE); const char* nameStr =valuename.asCString() ; int age = valueAge.asInt(); CCLOG("name:%s,age:%d",0); line-height:1.5!important">打印结果:Cocos2d: name:默认,age:-1 复杂一点JSON的编写和解析 Json::Value root; Json::Value array; arraY[arrkey1arrValue1"; arraY[arrKey2arrValue2arrkey3arrValue3"; root[arrayKey"] =array; String hJsonData = write.write(root); CCLOG(the complex json data:%s:rgb(128,hJsonData.c_str()); 打印结果 Cocos2d: 复杂一点的JSON格式数据:{"arrayKey":{"arrkey1":"arrValue1","arrKey2":"arrValue2","arrkey3":"arrValue3"}} Json::Value parseRoot; Json::Value parseArray; reader.parse(hJsonData,parseRoot); parseArray = parseRoot.:rgb(0,parseArray); CCLOG(the getTing data:%s,%s,%s:rgb(128,parseArray.:rgb(0,NULL).asCString(),NULL).asCString()); 打印结果:Cocos2d: 解析出的数据:arrValue1,arrValue2,arrValue3
以上是大佬教程为你收集整理的Cocos2dx2.2.1 jsoncpp 解析json数据全部内容,希望文章能够帮你解决Cocos2dx2.2.1 jsoncpp 解析json数据所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。