cocos2dx 2.2.2版本以上解析json ----rapidjson


在cocos2dx2.2.2以上的版本 将解析json的类由原先的rapidjson  官方文档显示是效率要比原先的json的效率更高  在2.2.2版本以前解析json的确是一个很耗时的工作 在cocos2dx2.2.2以上版本 将所有功能封装在rapidjson中 又将最主要的功能封装在rapidjson中的document.h中  所以document的对象取代了Reader 对象


头文件的改动:

#include"cocos-ext.h"
USING_NS_CC_EXT;
using namespace rapidjson;

/读取一个json文件 并将其转换为Value  
void CCAnalysisJeson::ReadJson(const char * filename)  
{  
      
    unsigned long size;  
    const char* file=(char*)CCFileUtils::sharedFileUtils()->getFileData(filename,"r",&size);  
    CCLOG("%s",file);  
    doc.Parse<kParseDefaultFlag>(file);
    Value & v_playername=doc["palyername"];
    CCLOG("%s",v_playername.GetString)  
}  
if (v.IsArray()) 
{  
            
           for (unsigned int i = 0; i< v.Size(); ++i) 
          {  
                 
                const rapidjson::Value &val = v[i];  
               log("%s",val.GetString());  
           }  
             
 }


<span style="font-family: Arial, Helvetica, sans-serif;">这里是判断得到的Value是否是一个数组 v.size返回的是unsigned int 类型  </span>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值