IOS初级:NSKeyedArchiver
NSKeyedArchiver对象归档
首先要实现<NScoding>里面的两个代理方法initWithCoder,encodeWithCoder
@property (nonatomic, copy) NSString *keyName;
/*
将某个对象写入文件时候会调用
在这个方法中说清楚哪些属性需要存储
*/
- (void)encodeWithCoder:(NSCoder *)encoder{
[encoder encodeObject:self.keyName forKey:@"KeyName"];
}
/*
解析对象会调用这个方法
需要解析哪些属性
*/
- (id)initWithCoder:(NSCoder *)decoder{
if (self = [super init]) {
self.name = [decoder decodeObjectForKey:@"KeyName"];
}
return self;
} //宏定义一个数据存储路径
#define MyDataFilePath [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject] stringByAppendingPathComponent:@"myApp.data"] @property (nonatomic, strong) NSMutableArray *myAppArr;
//从归档提取数据
_myAppArr = [NSKeyedUnarchiver unarchiveObjectWithFile:MyDataFilePath]; //将数据归档保存
[NSKeyedArchiver archiveRootObject:self.myAppArr toFile:MyDataFilePath];
IOS初级:NSKeyedArchiver的更多相关文章
- Unity3D for iOS初级教程:Part 3/3
转自Unity 3D for iOS 这篇文章还可以在这里找到 英语 Learn how to use Unity to make a simple 3D iOS game! 这份教程是由教程团队成员 ...
- Unity3D for iOS初级教程:Part 3/3(上)
转自:http://www.cnblogs.com/alongu3d/archive/2013/06/01/3111738.html 欢迎来到第三部分,这是Unity 3D for iOS初级系列教程 ...
- iOS - OC NSKeyedArchiver 数据归档
前言 @interface NSKeyedArchiver : NSCoder @interface NSKeyedUnarchiver : NSCoder 在 OC 语言中,归档是一个过程,即用某种 ...
- iOS - Swift NSKeyedArchiver 数据归档
前言 public class NSKeyedArchiver : NSCoder public class NSKeyedUnarchiver : NSCoder 在 OC 语言中,归档是一个过程, ...
- IOS初级:AFNetworking
狗 日的,第三方框架真j8难搞 1.为什么NS_ASSUME_NONNULL_BEGIN在6.2报错,你他么的还挑IDE,你这是什么态度? 2.还有,你他么的自动给老子转json了,有问过我么? #i ...
- IOS初级:导航控制器
1.AppDelegate.m老生常谈了,创建window,创建根视图rootViewController - (BOOL)application:(UIApplication *)applicati ...
- Unity3D for iOS初级教程:Part 2/3
转自Unity3D for iOS 这篇文章还可以在这里找到 英语 Learn how to use Unity to make a simple 3D iOS game! 这篇教材是来自教程团队成员 ...
- Unity3D for iOS初级教程:Part 1/3
转自Unity 3d for ios 这篇文章还可以在这里找到 英语 Learn how to use Unity to make a simple 3D iOS game! 这篇教材是来自教程团队成 ...
- Unity3D for iOS初级教程:Part 3/3(下)
转自:http://www.cnblogs.com/alongu3d/archive/2013/06/01/3111739.html 消息不会自动消除 你基本的游戏功能已经完成了,但是显示一些关于游戏 ...
随机推荐
- 数据类型&分支流程控制(2)
1.数据类型 1.数据类型 局部变量:书写在方法中的变量: 全局变量:书写在类中,与方法平级的变量: -如果没有给变量赋初值 -全局变量会默认拥有一个初始值 -局部变量将没有初始值,这个时候不能使用这 ...
- 使用git或TortoiseGit推送项目至gitlab
一.Wins安装Git+Trtoisegit工具实现版本克隆与推送 Git: https://git-scm.com/ Tortoisegit: https://tortoisegit ...
- Jmeter(十九) Md5加密操作之-------BeanShell PreProcessor(转载)
转载自 http://www.cnblogs.com/yangxia-test 背景: 有一些登录会做一些md5校验,通过jmeter的BeanShell可以解决MD5加密情况. 1.首先需要一个解码 ...
- Struts2学习资料
Struts2入门示例教程 http://blog.csdn.net/wwwgeyang777/article/details/19078545 Struts2工作原理 http://blog ...
- scrollIntoView 顶部与视图(容器)对齐
调用方法为 element.scrollIntoView() 参数默认为true. 参数为true时调用该函数,页面(或容器)发生滚动,使element的顶部与视图(容器)顶部对齐: 参数为false ...
- dedecms迁站
1 后台>系统>备份数据库 2 下载“所有(强调一下是所有:包括整站程序与备份的数据)”原站的数据,整个站点 3 将下载下来的所有数据上传到新空间 4 删除install目录下的i ...
- centos 7 下多网卡绑定+ vlan 网卡配置
一.前言 CentOS7之前系统提供给用户的是bonding driver来实现链路聚合,实际上bonding适用于大多数应用.Bonding driver的架构是由内核空间完全控制.管理. Team ...
- Toolbar 工具栏 菜单 标题栏 Menu
要使用Toolbar,要先将标题栏(ActionBar)关掉: style.xml中:<style name="MainActivityTheme" parent=" ...
- Quagga的安装和使用
Quagga的安装和使用 测试环境:VM 12 CentOS 6.5 64位 Quagga是一款功能比较强大的开源路由软件,支持rip, ospf,bgp等协议. 1. Quagga的 ...
- java_13.1 javaAPI
1 API概念 API:是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节.2 String类的概念和不变性 Stri ...