`
墙头上一根草
  • 浏览: 155205 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

cocos2dx CCUserDefault 讲数据存储到xml中

阅读更多

    存储数据的类就是CCUserDefault  这个类实现了一个静态的方法,供我们调用具体的看下面的例子

 

    CCUserDefault::sharedUserDefault()->setIntegerForKey("level", mlevel);  //存储int类型的数据
    CCUserDefault::sharedUserDefault()->setIntegerForKey("money", money);
    CCUserDefault::sharedUserDefault()->setIntegerForKey("xp", xp);

 

 

  从上面的例子中可以看出  CCUserDefault  底层实现的其实就是一个key-value方式的 数据结构,可以用来存储c++的基本数据格式

 

   一下是简单的源码片段:

 

   class CC_DLL CCUserDefault
{
public:
    ~CCUserDefault();

    // get value methods

    /**
    @brief Get bool value by key, if the key doesn't exist, a default value will return.
     You can set the default value, or it is false.
    */
    bool    getBoolForKey(const char* pKey);
    bool    getBoolForKey(const char* pKey, bool defaultValue);
    /**
    @brief Get integer value by key, if the key doesn't exist, a default value will return.
     You can set the default value, or it is 0.
    */
    int     getIntegerForKey(const char* pKey);
    int     getIntegerForKey(const char* pKey, int defaultValue);
    /**
    @brief Get float value by key, if the key doesn't exist, a default value will return.
     You can set the default value, or it is 0.0f.
    */
    float    getFloatForKey(const char* pKey);
    float    getFloatForKey(const char* pKey, float defaultValue);
    /**
    @brief Get double value by key, if the key doesn't exist, a default value will return.
     You can set the default value, or it is 0.0.
    */
    double  getDoubleForKey(const char* pKey);
    double  getDoubleForKey(const char* pKey, double defaultValue);
    /**
    @brief Get string value by key, if the key doesn't exist, a default value will return.
    You can set the default value, or it is "".
    */
    std::string getStringForKey(const char* pKey);
    std::string getStringForKey(const char* pKey, const std::string & defaultValue);

    // set value methods

    /**
    @brief Set bool value by key.
    */
    void    setBoolForKey(const char* pKey, bool value);
    /**
    @brief Set integer value by key.
    */
    void    setIntegerForKey(const char* pKey, int value);

分享到:
评论

相关推荐

    Cocos2d-x 游戏资源(图片、XML、TXT等)打包加密 之 解密读取

    本文将详细介绍如何在Cocos2d-x环境中对游戏资源(如图片、XML文件和TXT文本)进行打包加密,并在运行时解密读取。 首先,我们需要理解资源打包的基本流程。在Cocos2d-x中,我们可以使用工具如cocos console或第三...

    cocos2d-x 读取本地的xml文件

    在Cocos2d-x这个强大的2D游戏开发框架中,读取本地XML文件是一项重要的功能,尤其当需要处理数据结构复杂或实现图文混排时。XML(eXtensible Markup Language)是一种标记语言,常用于存储和传输结构化数据。在Cocos...

    Cocos2d-x实战:JS卷——Cocos2d-JS开发

    资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...

    Cocos2D-X开发学习笔记-游戏数据存储项目实例(上)

    在Cocos2D-X游戏开发中,数据存储是不可或缺的一部分,它涉及到游戏进度、用户设置、得分记录等信息的持久化。本项目实例主要探讨如何在Cocos2D-X框架下实现游戏数据的有效存储,以确保游戏在不同会话之间能够保持...

    cocos2d-x API中文文档

    这份API文档不仅提供了关于Cocos2d-x的基本信息,还深入到具体的技术细节,对于学习和使用cocos2d-x开发游戏的开发者来说,是非常宝贵的参考资料。通过这份文档,开发者可以了解如何利用cocos2d-x的API构建游戏场景...

    cocos2d-x XML解析

    在Cocos2d-x游戏开发框架中,XML解析是一个重要的环节,它允许开发者处理和读取XML格式的数据,这些数据可以包含游戏配置、资源引用、关卡设计等信息。XML(eXtensible Markup Language)是一种标记语言,因其结构...

    cocos2d-x-cocos2d-x-2.2.2.zip

    这个压缩包“cocos2d-x-cocos2d-x-2.2.2.zip”包含了cocos2d-x 的2.2.2版本,该版本是cocos2d-x发展中的一个重要里程碑,它提供了许多改进和优化,使得开发者能够更加高效地创建2D游戏和应用。 在cocos2d-x 2.2.2中...

    Cocos2d-x CCUserDefault 实现简单数据存储

    利用CCUserDefault 的存储功能,实现判断程序是否是第一次运行。相关文章请参考博客:http://blog.csdn.net/u012945598/article/category/1764935

    Cocos2d-x 3.x游戏开发实战pdf含目录

    游戏数据存储方面,Cocos2d-x提供了SQLite数据库支持,用于本地数据存储。此外,还会讲解如何利用JSON或XML进行数据序列化和反序列化,便于游戏数据的读写和交换。 最后,本书可能会探讨性能优化技巧,如内存管理、...

    Cocos2d-x实战 JS卷 Cocos2d-JS开发

    《Cocos2d-x实战 JS卷 Cocos2d-JS开发》是一本深入探讨Cocos2d-x游戏引擎JavaScript版本使用的专业书籍。Cocos2d-x是全球范围内广泛采用的游戏开发框架,尤其适用于2D游戏的制作,而Cocos2d-JS则是其JavaScript接口...

    cocos2d-x json字符串与cocos2d::Value转换工具

    该资源主要用于cocos2d-x中Value与json字符串的相互转换,提供从json文件读取为cocos2d::Value,cocos2d::Value写入到文件,cocos2d::Value转换为json字符串,json字符串转换为cocos2d::Value。json字符串转换成cocos...

    Cocos2d-JS游戏开发

    本篇将深入探讨Cocos2d-JS的游戏开发知识,从基础到进阶,帮助你掌握这一利器。 首先,了解Cocos2d-JS的基础概念至关重要。Cocos2d-JS由Cocos2d-x移植而来,采用JavaScript语言,支持HTML5和原生应用开发。它的核心...

    cocos2d-android.jar.zip_CoCos2d_android jar_android game_cocos2d

    cocos2d-android游戏引擎是著名游戏引擎cocos2d游戏引擎的Android版。cocos2d-android游戏引擎性能优越、易学、...把cocos2d-android游戏引擎的lib包引入到我们的android项目中就可以运行起来。设置相当的简单、方便。

    经典版本 方便下载 源码 旧版本 3.8 官网找不到了 cocos2d-x-3.8.zip

    《cocos2d-x 3.8:经典游戏引擎源码解析》 cocos2d-x 是一个跨平台的游戏开发框架,它基于C++,同时提供了Lua和JavaScript的绑定,让开发者可以方便地在多种操作系统上创建2D游戏、演示程序和其他图形交互应用。这...

    cocos2d js api 中文文档

    Cocos2d-js API中文文档是一份非常重要的资源,它为开发者提供了全面的Cocos2d-js框架的接口和功能介绍。Cocos2d-js是一个基于C++开发的游戏引擎,它将Cocos2d-x的功能与JavaScript语言相结合,使得游戏开发更加便捷...

    cocos2d-x 3.0

    cocos2d-x 3.0中的cc::Animate类可以轻松管理这些帧,通过`createWithFrames`方法创建动画,并使用`runAction`将动画添加到精灵上。 3. 物理引擎:如果游戏需要更真实的物理效果,比如重力、碰撞检测,可以集成Box...

    Cocos2d-x实战C++卷关东升著完整版pdf

    本书可能会详细讲解Cocos2d-x中的内存管理机制,如自动引用计数(ARC)和弱引用,以及如何通过优化代码和数据结构来提高游戏运行效率。 最后,还会涉及到Cocos2d-x的构建系统和发布流程,包括多平台支持、资源打包...

    cocos2d-x windows vs2010配置

    接下来,把 F:\cocos2d-1.0.1-x-0.9.1\cocos2dx 和 F:\cocos2d-1.0.1-x-0.9.1\CocosDenshion 这两个文件夹里面的全部内容拷贝一份到 D:\cocos2d-xProjects\HelloWorld 中去。 九、设置静态链接库 接下来,打开 F:\...

    cocos2d-x_v3.16安装及环境变量配置文档

    cocos2d-x 是一个开源的游戏开发框架,使用 C++ 语言编写,支持多平台发布,包括 iOS、Android、Windows、macOS、Linux 和 Web。cocos2d-x v3.16 是该框架的一个版本号,本文档主要介绍了该版本的安装流程以及环境...

    Cocos2d-x游戏开发之CCUserDefault类存储详解 源码

    在Cocos2d-x游戏开发中,数据存储是不可或缺的一部分,而`CCUserDefault`类则是Cocos2d-x提供的一种轻量级的数据持久化方案。`CCUserDefault`允许开发者方便地读写用户偏好设置或者游戏的一些简单数据,比如记录用户...

Global site tag (gtag.js) - Google Analytics