引用头文件:
1 #include "cocos-ext.h" 2 3 USING_NS_CC; 4 5 USING_NS_CC_EXT;
JSON数据如下:
{"id":123456,"name":"testname","content":{"login":"good","time":"1234"}}
解析JSON数据:
1 char* jsondata = "{\"id\":123456,\"name\":\"testname\",\"content\":{\"login\":\"good\",\"time\":\"1234\"}}"; 2 3 4 5 CSJson::Reader reader; 6 CSJson::Value value; 7 8 9 if(reader.parse(jsondata, value)) 10 { 11 char const* out = value["name"].asCString(); 12 CCLog("%s", out); 13 14 CSJson::Value obj = value["content"]; 15 char const* out2 = obj["time"].asCString(); 16 CCLog("%s", out2); 17 }
生成JSON数据:
1 CSJson::Value root; 2 CSJson::Value arrayObj; 3 CSJson::Value item; 4 5 6 7 item["data1"] = "json"; 8 item["data2"] = "java"; 9 arrayObj.append(item); 10 11 12 13 root["name"] = "test"; 14 root["content"] = arrayObj; 15 16 std:string out3 = root.toStyledString(); 17 18 CCLog("%s", root.toStyledString().c_str());
注意:取值时应根据json数据类型使用相应方法,如数值型使用asInt() ,不能直接使用asString,其他类型一样。。。
浙公网安备 33010602011771号