微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

cocos2d-x rapidjson

    #include "json/rapidjson.h"
    #include "json/document.h"
    rapidjson::Document doc;
    ssize_t size = 0;
    unsigned char *pBytes = nullptr;
    
    std::string filePath = cocos2d::FileUtils::getInstance()->fullPathForFilename(fileName);
    pBytes = cocos2d::CCFileUtils::getInstance()->getFileData(fileName,"r",&size);
    std::string contentStr((const char*)pBytes,size);
    CC_SAFE_DELETE_ARRAY(pBytes);
    doc.Parse<rapidjson::kParseDefaultFlags>(contentStr.c_str());
    
    if(doc.HasParseError())
    {
        return;
    }
    
    if(!doc.IsObject())
    {
        return;
    }
    
    const rapidjson::Value& data = doc["character"];
    if(data.IsArray())
    {
        for (int i = 0; i < data.Size(); ++i)
        {
            const rapidjson::Value& rowData = data[i];
            std::string str = rowData["name"].GetString();
            cclOG("-----%s",str.c_str());
        }
    }
    else
    {
        cclOG("not array");
    }

//character.json
{
    "character": [
        {
            "name": "lee"
        },{
            "name": "jack"
        }
    ]
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐