在iphone 保存gif上如何保存数据到xml文件中呢?

cocos2d-x中保存用户游戏数据CCUserDefault
- ITeye技术网站
博客分类:
正在做项目中有很多游戏数据要保存,常见的玩家数据这些比较简单的可以用CCUserDefault。它是cocos2d-x用来存取基本数据类型用的。保存为XML文件格式。
主要方法:(和java的map很像,键值对,应该很容易懂的)
setBoolForKey(const char* pKey, bool value);
setIntegerForKey(const char* pKey, int value);
setFloatForKey(const char* pKey, float value);
setDoubleForKey(const char* pKey, double value);
setStringForKey(const char* pKey, const std::string & value);
通过键读取数据,如果键不存在,可以设置一个defaultValue返回自己想要的值。
getBoolForKey(const char* pKey, bool defaultValue = false);
getIntegerForKey(const char* pKey, int defaultValue = 0);
getFloatForKey(const char* pKey, float defaultValue=0.0f);
getDoubleForKey(const char* pKey, double defaultValue=0.0);
std::string
getStringForKey(const char* pKey, const std::string & defaultValue = "");
首次运行程序时可以去生成xml文件CCUserDefault::sharedUserDefault()-&setIntegerForKey("MyGold", 0);
这样就可以生成一个xml文件。不过这种硬代码我不是很喜欢。
每次调用的时候要写很长的代码。可以建议搞几个宏,毕竟CCUserDefault的get,set实在太长了。
#define SaveStringToXML CCUserDefault::sharedUserDefault()-&setStringForKey
#define SaveIntegerToXML CCUserDefault::sharedUserDefault()-&setIntegerForKey
#define SaveBooleanToXML CCUserDefault::sharedUserDefault()-&setBoolForKey
#define LoadStringFromXML CCUserDefault::sharedUserDefault()-&getStringForKey
#define LoadIntegerFromXML CCUserDefault::sharedUserDefault()-&getIntegerForKey
#define LoadBooleanFromXML CCUserDefault::sharedUserDefault()-&getBoolForKey
如何首次生成判断文件是否存在呢
其实可以利用get方法去获取。
if ( !LoadBooleanFromXML("_IS_EXISTED"))
initUserData();
SaveBooleanToXML("_IS_EXISTED", true);
对了,ccUserDefault在0.9.1版本会在安卓平台下crash掉,更新源代码就OK了
CCUserDefault 游戏数据保存和加载
CCUSerDefault是在cocos2d-X框架之中用于存储轻量级的用户数据而准备的,存放在本地的文件之中,是一个xml文件类型。
开发环境为Mac,编译环境为XCode,游戏引擎为Cocos2d-X。
因为刚刚从object-c转过来,真实感受到苹果的封装远远比C++好用多了。单单从#import和 #include去区分就可以看的出来,习惯了#import,看到这个#include
就好纠结啊。再者就是C++的命名空间啊,一开始忘了使用
usingnamespacecocos2d;
结果导致我使用ccuserDefault半天出不来提示,纠结我半天。
首先,先把所需的头文件引入,并且添加命名空间。
#include "MainScene.h"
#include "SimpleAudioEngine.h"
#include &CCData.h&
#include &CCUserDefault.h&
#include &curl.h&
using namespace cocos2d;
using namespace CocosD
using namespace
这个CCUSerDefault可以操作的数据类型有int,double,float,string,bool。有一对set和get方法。这里只是演示string,其他的自己去测试。
bool MainScene::init()
if (!CCLayer::init()) {
return false;
CCUserDefault::sharedUserDefault()-&setStringForKey("userName","西门吹雪");
string userName = CCUserDefault::sharedUserDefault()-&getStringForKey("userName");
CCLOG("*****userName %s",userName.c_str());
CCUserDefault::sharedUserDefault()-&setStringForKey("userName","火云邪神");
CCUserDefault::sharedUserDefault()-&flush();
userName = CCUserDefault::sharedUserDefault()-&getStringForKey("userName");
CCLOG("*****userName %s",userName.c_str());
这里贴出输出结果:
当我现在把set方法注释掉后,依然可以直接从本地的xml文件取出数据,但是只能取出火云邪神的,不能取出西门吹雪。因为火云邪神调用 flush()方法将数据从内存中的栈区取出,写到了本地磁盘。把结果贴图加上:
这里通过 CCUserdefault:: getXMLFilePath()方法取出xml文件的默认地址:
std::string fileName = CCUserDefault::getXMLFilePath();
输出地址:
Cocos2d: fileName
/Users/liyongjian/Library/Application Support/iPhone Simulator/6.1/Applications/A8E-4B34-9CA1-4C/Library/Caches/UserDefault.xml
然后我去这个地址下看了看,发现找不到 UserDefault.xml
这个文件,但是看到了这个
我的存储内容在这个plist文件里面。
浏览: 126498 次
来自: 苏州
可以参考最新的文档:如何在eclipse jee中检出项目并转 ...
谢谢,刚好用上
0.9.1版本 太低了点吧。。。
缺少代码啊key.isAcceptable()时怎么处理的啊查看: 4277|回复: 3
最后登录12/7/13注册时间12/7/11阅读权限5积分2精华0帖子金币51 枚91币0 枚
Lv:1, 积分 2, 距离下一级还需 28 积分
钻石: 0 颗
人气: 0 次
金币: 51 个
发表于 12/7/11 22:55:14
本帖最后由 91手机-爱昵 于
09:35 编辑
手机 i-mate 8150
91助手版本 1.8.5.123
手机是wm6.1的系统,用91助手将短信文件导出为xml后,使用notepad++手工增加了新的短信后,无法再用91助手将修改后的xml文件导入手机中。在增加新短信的时候,都是依照原始xml中的短信描述语句来添加的。试验之后发现只能导入没有修改过的xml文件,修改后的xml文件是不可导入的,请问如何解决?
如何将存为记事本的短信添加到当前的手机中?
帖子永久地址:&<button type="submit" class="pn" onclick="setCopy('为什么编辑后的短信xml文件后无法再导入手机中呢\n/thread--1.html', '帖子地址已经复制到剪贴板您可以用快捷键 Ctrl + V 粘贴到 QQ、MSN 里。')">推荐给好友
最后登录15/8/17注册时间11/7/4阅读权限150积分2523精华9帖子金币4227 枚91币0 枚
钻石: 0 颗
人气: 0 次
金币: 4227 个
发表于 12/7/12 09:25:52
您好,使用助手导出的xml文件,跟自己修改的文件是不同的,故不能导入,建议您手动编辑。
最后登录12/7/13注册时间12/7/11阅读权限5积分2精华0帖子金币51 枚91币0 枚
Lv:1, 积分 2, 距离下一级还需 28 积分
钻石: 0 颗
人气: 0 次
金币: 51 个
发表于 12/7/13 18:54:11
如何手动编辑呢??用哪个编辑软件来编辑??
最后登录15/8/17注册时间11/7/4阅读权限150积分2523精华9帖子金币4227 枚91币0 枚
钻石: 0 颗
人气: 0 次
金币: 4227 个
发表于 12/7/14 09:02:00
楼主,用工具修改过的xml的短信,助手无法识别,无法恢复。 如果短信重要,只能建议您自己在手机上手动保存短信了。
下载人民视讯给五星好评截图,华为Ascend Mate7、京东百元电子卡,《碟中谍5》电影票。活动时间:8月25-9月3日
GMT+8, 15/8/29 17:26
Powered by让我们稍微展望一下,下周会有什么新作出现呢?比如说手游大厂的《劳拉GO》,剩下的就...
今天,不仅仅电子消费品设备布满了精密的元件,就连“大件”的汽车也配置了各种高科技...
对于一些知识面比较广,或者对于历史比较感兴趣的玩家来说,黑手党这个词一定不会陌生...
Mobile Try-On 项目鼓励顾客在苹果店购买 Apple Watch 时先试戴手表,将其与装有 Appl...
有的人已经在拿着老爹给的钱准备买买买了,有的人则是为了新机的到来而默默搬砖。还有...
12英寸Retina MacBook何时会更新,会有怎样的处理器性能?
科技公司除了生产消费设备之外,也要为国防事业出一份力。
为了挽回客户,三星此举也是够拼的。
本周世嘉再上架一款新游《戦の海賊(战斗海贼)》,以探寻海上秘宝和海盗战斗为主题,...
近日,游戏开发商RAZVAN HOMENTCOVSCHI在苹果商店当中推出了其新作《灰烬之旅(Ember'...
《星光大冒险》是国内游戏商 MiYi Game 在中国区发行的一款萌萌的休闲益智游戏,故事...
《愤怒的小鸟》相信很多人都已经玩过了,而与怒鸟有些相似的《迷你兵团(TINY EMPIRE...
早在2012年,一款名为《滑雪大冒险(Ski Safari)》的休闲游戏在iOS等移动平台当中上...
交通问题一向是不少人心头上的一根刺,日常生活挤挤车,堵堵车也就罢了,但是遇到旅游...
说起跳跃游戏,你可能会想起《涂鸦跳跃》,不过面对玩家们越来越刁的口味,单纯的跳跃...
除了Apple Music服务之外,苹果收购Beats的目的还少不了耳机。iPhone越来越强大的同时...
让iPhone获得 MagSafe 磁吸式充电功能的方法真的很简单~~16美元就搞定了。
越来越多的配件厂商开始加入到为 Apple Watch 服务的行列,那些说 Apple Watch 不行的...
第三方手表配件陆续上架Apple Store,当然你得先有个表。
对于智能手机厂商来说,氢电池的面世是个好消息,对于苹果来说更是。因为这家成功开发...
使用 iPhone 6 Plus 拍摄照片后发现有模糊现象的小伙伴,现在可以马上去官网查看自己...
这款手写板就是便宜环保,要改进手写板的缺陷的话,价格会相应高很多,还好随着和iOS...
这是一款来自未来的 iPhone 智能底座、扫描仪、打印机,无论是造型还是使用方式和功能...
如何将xml文件中取得到时间字符串转换成nsdate?
注册时间 最后登录
在线时间351 小时 UID
主题帖子人气
青苹果, 积分 114, 距离下一级还需 86 积分
从xml文件中取得到字符串为“Fri, 09 Oct :29 GMT”,但是查到到NSDate方法均不支持这种格式,难道非得要对字符串先进行处理吗?
注册时间 最后登录
在线时间351 小时 UID
主题帖子人气
自己解决了,给大家共享一下。
NSString *yourXMLDate = @&Wed, 23 Sep :03 GMT& ;
NSDateFormatter *inputFormatter = [[NSDateFormatter alloc] init];
[inputFormatter setDateFormat:@&EEE, d MMM yyyy HH:mm:ss &#39;GMT&];
NSDate *inputDate = [inputFormatter dateFromString:yourXMLDate];
NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init];
[outputFormatter setDateFormat:@&yyyy-M-dd, HH:mm a&];
NSString *outputDate = [outputFormatter stringFromDate:inputDate];
NSLog(@&The date is %@&, outputDate);
注册时间 最后登录
在线时间37 小时 UID
主题帖子人气
NSDate* toDate1 = [ [ NSDate alloc] initWithString:@&xxxxx-xx-xx 17:10:00 +0600& ];
威锋旗下产品
Hi~我是威威!
沪ICP备号-1 丨 深公安网监备案号 5
增值电信业务经营许可证:
Powered by Discuz!&#xe621; 上传我的文档
&#xe602; 下载
&#xe60c; 收藏
免责声明: 本站资料多数来自网络,如有侵权,敬请告知,将立即删除! 本人对由道客引起的侵权问题不承担法律责任,转发下载资料请于24小时内删除,谢谢!
&#xe602; 下载此文档
正在努力加载中...
Android SQLite 开发教程(5)- 导出数据库到XML 文件
下载积分:100
内容提示:Android SQLite 开发教程(5)- 导出数据库到XML 文件
文档格式:PDF|
浏览次数:12|
上传日期: 18:19:16|
文档星级:&#xe60b;&#xe612;&#xe612;&#xe612;&#xe612;
该用户还上传了这些文档
Android SQLite 开发教程(5)- 导出数据库到XML 文件
官方公共微信

我要回帖

更多关于 iphone 保存gif 的文章

 

随机推荐