您的位置:首页 > 移动开发 > Cocos引擎

cocos2d-x JsonBox 读写

2014-03-06 16:30 274 查看
#include "JsonBox.h"
std::string path = "test.json”;
//注意引入路径
path = cocos2d::CCFileUtils::sharedFileUtils()->fullPathForFilename(path.c_str());
/*写入文件*/
JsonBox::Object o;
o["myName"] = JsonBox::Value(123);
o["myOtherMember"] = JsonBox::Value("asld\\kfn");
o["hahaha"] = JsonBox::Value(true);
o["adamo"] = JsonBox::Value(129.09);
std::cout << o << std::endl;
JsonBox::Value v(o);
v.writeToFile(path);

/*读取文件*/
JsonBox::Value v2;
v2.loadFromFile(path);
std::cout << v2 << std::endl;

/*读取json语句*/
JsonBox::Array a;
a.push_back(JsonBox::Value("I'm a string..."));
a.push_back(JsonBox::Value(123));
std::cout << a << std::endl;


void JsonTest::Create() {
JsonBox::Value v1;
char *json =
"{\"menu\":{\"id\":\"file\",\"value\":\"File\",\"popup\":{\"menuitem\":[{\"value\":\"New\",\"onclick\":\"CreateNewDoc()\"},{\"value\":\"Open\",\"onclick\":\"OpenDoc()\"},{\"value\":\"Close\",\"onclick\":\"CloseDoc()\"}]}}}";
v1.loadFromString(json);
std::string temp = v1["menu"]["id"].getString();
CCLOG("json.transform=%s", "start");
char* str = strdup(temp.c_str());
CCLOG("json.menu.id=%s", str);

JsonBox::Array arr = v1["menu"]["popup"]["menuitem"].getArray();
CCLOG("arr.lenth=%d", arr.size());
for (int i = 0; i < arr.size(); i++) {
std::string t = arr[i]["value"].getString();
str = strdup(t.c_str());
CCLOG("arr.item=%s", str);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: