Cocos2D_X中的文本操作(LibJson)
2013-10-29 15:49
381 查看
首先.h中声明一个方法: void ParseJSON(const JSONNode & n);
再cpp文件中添加以下这行代码:
JSONNode n(JSON_NODE);
n.push_back(JSONNode("RootA","Value in parent node"));
JSONNode c(JSON_ARRAY);
n.set_name("ChildNode");
JSONNode c1(JSON_NODE),c2(JSON_NODE);
c1.push_back(JSONNode("AAAA", "xxxxxxxxxxx"));
c2.push_back(JSONNode("BBBB", "xyc123456789"));
c2.push_back(JSONNode("CCCC", ".........."));
n.push_back(c);
n.push_back(c1);
n.push_back(c2);
cout<<n.write_formatted()<<endl;
ParseJSON(n);
return true;
调用void ParseJSON(const JSONNode & n)方法
void HelloWorld::ParseJSON(const JSONNode & n)
{
JSONNode::const_iterator i = n.begin();
while (i != n.end()) {
if (i ->type() ==JSON_ARRAY|| i->type() == JSON_NODE) {
ParseJSON(*i);
}
std::string node_name = i->name();
if (node_name=="RootA") {
json_string rootA = i->as_string();
cout<<rootA<<endl;
}
else if (node_name == "AAAA")
{
json_string AAAA = i->as_string();
cout<<AAAA<<endl;
}
else if (node_name == "BBBB")
{
json_string BBBB = i->as_string();
}
++i;
}
}
Xcode编译结果
再cpp文件中添加以下这行代码:
JSONNode n(JSON_NODE);
n.push_back(JSONNode("RootA","Value in parent node"));
JSONNode c(JSON_ARRAY);
n.set_name("ChildNode");
JSONNode c1(JSON_NODE),c2(JSON_NODE);
c1.push_back(JSONNode("AAAA", "xxxxxxxxxxx"));
c2.push_back(JSONNode("BBBB", "xyc123456789"));
c2.push_back(JSONNode("CCCC", ".........."));
n.push_back(c);
n.push_back(c1);
n.push_back(c2);
cout<<n.write_formatted()<<endl;
ParseJSON(n);
return true;
调用void ParseJSON(const JSONNode & n)方法
void HelloWorld::ParseJSON(const JSONNode & n)
{
JSONNode::const_iterator i = n.begin();
while (i != n.end()) {
if (i ->type() ==JSON_ARRAY|| i->type() == JSON_NODE) {
ParseJSON(*i);
}
std::string node_name = i->name();
if (node_name=="RootA") {
json_string rootA = i->as_string();
cout<<rootA<<endl;
}
else if (node_name == "AAAA")
{
json_string AAAA = i->as_string();
cout<<AAAA<<endl;
}
else if (node_name == "BBBB")
{
json_string BBBB = i->as_string();
}
++i;
}
}
Xcode编译结果
相关文章推荐
- cocos2d-x中文文档和例子程序
- cocos2dx 坐标系 -转
- cocos2d-x 控制台输出日志
- cocos2d-x 控制台输出日志
- 【cocos2d-x 大型ARPG手游研发----地图活起来了】
- cocos2d-x中CCArray里面CCARRAY_FOREACH的用法
- cocos2d-X搭建环境,安装模版new新项目报脚本错误的解决办法
- cocos2d-x 通过python模板方式新建支持lua的工程
- cocos2d-x——CCCallFunc家族例子
- Cocos2d-x--开发参考资料
- cocos2d部分函数
- cocos2d权威指南部分摘录
- cocos2d-x场景中的层(CCLayer)及其触摸消息响应(转)
- 【Cocos2d-x游戏引擎开发笔记(6)】触屏事件与多媒体 (转)
- cocos2d-x——CCCallFunc家族
- Cocos2dx隐藏iOS7状态栏】通过添加Plist Key隐藏iOS7状态栏
- Cocos2dx隐藏iOS7状态栏】通过添加Plist Key隐藏iOS7状态栏
- cocos2d-x——CCActionInterval(延时动作)例子
- cocos2d-x——(CCSpeed)可调整速度动作
- 【cocos2d-x 手游研发----地图活起来了】