博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cocos2d-x 数据存储
阅读量:6566 次
发布时间:2019-06-24

本文共 1326 字,大约阅读时间需要 4 分钟。

  这一章中,我们从一个小小的金币数入手,讨论了数据的话题。我们尽量使用引擎提供的数据存储方法,以最大可能地适应跨平台需求。这里介绍的存储方法本质上都是基于  的,对于 1 MB 以下的存储规模来说,已经完全足够了,而更大型的存储场景在目前的移动游戏中并不常见。在必要的时候,也可以使用  来为数据提速调优。 下面 总结一下本章的重要知识点。

:它是 Cocos2d-x 提供的一个十分便捷的本地存储解决方案。利用  类,可以存取简单的键值数据。

:提供了对本地文件存取的基本功能。与  相比, 更为底层,因此也适合用于存取更加庞大的二进制文件。

:Cocos2d-x 中常见的文件类型,用于存储配置数据或游戏资料。 的优势在于描述性极强,因此易于编辑。

:网络传输中常用的对象描述格式,与 JavaScript 兼容,在广告平台等网络交换数据的情形中十分常见。

:轻量级的关系数据库,用于高速且安全地在本地存储数据。在对性能要求较高时,可以考虑使用  存储数据。

 

CCUserDefault

  正在做项目中有很多游戏数据要保存,常见的玩家数据这些比较简单的可以用CCUserDefault。它是cocos2d-x自带用来存取基本数据类型用的。CCUserDefault并不是加密的保存的信息是明文的,文件格式为XML。Key -Value,key索引Value值;

  提供的存储都是些基础类型,bool,int,string,double,float,方法很容易懂:存储使用set,获取使用get。

void setBool/Integer/Float/Double/StringForKey(const char* pKey, value); void getBool/Integer/Float/Double/StringForKey(const char* pKey, Defalutvalue);

  每一种数据类型的setXXXForkey方法中都有调用写文件步骤,也就是说,每次调用setXXXForKey,就会往文件中写一条记录,当然也可以在写文件末尾调用flush()函数。

使用举例:UserDefault::getInstance()->setStringForKey("name", "dsw");
UserDefault::getInstance()->setIntegerForKey("age", 33); UserDefault::getInstance()->setDoubleForKey("high", 1.71);
UserDefault::getInstance()->setBoolForKey("marign", false);
string ret = CCUserDefault::getInstance()->getStringForKey("name");
CCLOG("name is %s", ret.c_str());

  注:UserDefault提供了默认的文件名(XML_FILE_NAME)和读写路径(FileUtils::getInstance()->getWritablePath())

 

 

转载地址:http://icdjo.baihongyu.com/

你可能感兴趣的文章
〖Android〗(how-to) fix k860/k860i buletooth.
查看>>
static与线程安全 -摘自网络
查看>>
jsf标签,jsp标签与jstl标签
查看>>
使用PHP CURL的POST数据
查看>>
struts2:表单标签
查看>>
ASP.NET MVC3 通过Url传多个参数方法
查看>>
遭遇sql server 2005 启动包未能正确加载需要重新安装错误,重装.NET FRAMEWORK经历分析...
查看>>
简明 MongoDB 入门教程
查看>>
.NET Core 3.0中的数据库驱动框架System.Data
查看>>
北大AI公开课2019 | 雷鸣:人工智能革命与机遇
查看>>
英特尔开源计算机视觉数据标签工具CVAT,加速数据注释
查看>>
consule服务注册和发现 安装 部署
查看>>
多个帐户都用root 来登录 怎么看另一个用户使用的那些命令
查看>>
Map集合案例
查看>>
《FPGA全程进阶---实战演练》第十一章 VGA五彩缤纷
查看>>
第七次课程作业
查看>>
C++ 文本查询2.0(逻辑查询)
查看>>
Objective-C学习总结-13协议1
查看>>
web学习方向
查看>>
A*算法实现
查看>>