本地存储的读写
来源:互联网 发布:淘宝网可爱宝贝纸尿裤 编辑:程序博客网 时间:2024/06/16 16:47
1.NSKeyedArchiver:采用归档的形式来保存数据,该数据对象需要遵守NSCoding协议,并且该对象对应的类必须提供encodeWithCoder:和initWithCoder:方法。前一个方法告诉系统怎么对对象进行编码,而后一个方法则是告诉系统怎么对对象进行解码。例如对Possession对象归档保存。
归档操作:
如果对Possession对象allPossession归档保存,只需要NSCoder子类NSKeyedArchiver的方法archiveRootObject:toFile: 即可。
NSString *path = [self possessionArchivePath];
[NSKeyedArchiver archiveRootObject:allPossessions toFile: path ]
解压操作:
同样调用NSCoder子类NSKeyedArchiver的方法unarchiveRootObject:toFile: 即可
allPossessions = [[NSKeyedUnarchiver unarchiveObjectWithFile:path] retain];
缺点:归档的形式来保存数据,只能一次性归档保存以及一次性解压。所以只能针对小量数据,而且对数据操作比较笨拙,即如果想改动数据的某一小部分,还是需要解压整个数据或者归档整个数据。
3. Write写入方式:永久保存在磁盘中。具体方法为:
第一步:获得文件即将保存的路径:
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES);//使用C函数NSSearchPathForDirectoriesInDomains来获得沙盒中目录的全路径。该函数有三个参数,目录类型、he domain mask、布尔值。其中布尔值表示是否需要通过~扩展路径。而且第一个参数是不变的,即为NSSearchPathDirectory 。在IOS中后两个参数也是不变的,即为:NSUserDomainMask 和 YES。
NSString *ourDocumentPath =[documentPaths objectAtIndex:0];
- 本地存储的读写
- ios 本地存储(1)本地文件读写
- Android本地数据存储之.txt文件存储读写
- 数据的本地存储
- HTML5的本地存储
- html5的本地存储
- iOS的本地存储
- 数据库的本地存储
- html5的本地存储
- HTML5的本地存储
- 浏览器的本地存储
- HTML5的本地存储
- html5的本地存储
- html5的本地存储
- html5的本地存储
- JS 本地存储-web Storage+js读写cookie
- Android:外部存储的读写
- c++语言的本地磁盘的读写
- STL学习(一)map容器学习
- html练习(1)
- 详解 QT 布局管理界面 图文并茂
- day day up--Android开发MediaPlayer声音播放
- 解析xml文件
- 本地存储的读写
- 帮助认识理解NODE的经典
- sqlite3方法的使用
- 黑马程序员-学习java的构造器
- 免费可商用的图片资源推荐
- 关联容器
- Android task process thread 进程与线程
- 安卓SharedPreference之多进程共享
- 黑马程序员 浅谈封装的具体实现的几种例子