41、基本数据持久化:属性列表、归档与SQLite3

基本数据持久化:属性列表、归档与SQLite3

1. 属性列表持久化

属性列表持久化是一种简单的数据保存方式。以下是保存数据到属性列表的代码示例:

[array addObject:field1.text]; 
[array addObject:field2.text]; 
[array addObject:field3.text]; 
[array addObject:field4.text]; 
[array writeToFile:[self dataFilePath] atomically:YES];

上述代码创建了一个可变数组,将四个文本字段的内容添加到数组中,然后将数组内容写入属性列表文件。

当主视图加载完成时,程序会查找属性列表文件。若文件存在,就将数据复制到文本字段中。同时,程序会注册应用程序变为非活动状态(如退出或进入后台)的通知。当此情况发生时,程序会收集四个文本字段的值,存入可变数组,再将数组写入属性列表。

运行应用程序时,在模拟器中输入文本后,需按下主屏幕按钮(模拟器窗口底部的圆形按钮),而非直接退出模拟器,否则数据无法保存。

不过,属性列表持久化有一定局限性,只有一小部分对象可以存储在属性列表中。

2. 归档模型对象

在Cocoa世界中,归档是另一种序列化方式,任何对象都可实现。只要类中的每个属性是标量(如 int float ),或者是符合 NSCoding 协议的类的实例,就可以完

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值