iOS 数据持久化:从属性列表到归档和 SQLite3
1. 属性列表持久化
属性列表持久化是一种简单的数据保存方式。以下是保存数据到属性列表的示例代码:
[array addObject:field1.text];
[array addObject:field2.text];
[array addObject:field3.text];
[array addObject:field4.text];
[array writeToFile:[self dataFilePath] atomically:YES];
具体操作步骤如下:
1. 创建一个可变数组。
2. 将四个文本字段的文本添加到数组中。
3. 将数组内容写入属性列表文件。
当主视图加载完成时,会查找属性列表文件。若文件存在,会将数据复制到文本字段中。同时,程序会注册监听应用程序变为非活动状态(如退出或进入后台)的通知。当该事件发生时,会收集四个文本字段的值,将其放入可变数组,再将数组写入属性列表。
运行应用程序时,编译并在模拟器中启动。输入内容后,务必按下模拟器窗口底部的圆形主页按钮,因为直接退出模拟器相当于强制退出应用程序,无法接收到应用程序终止的通知,数据将无法保存。
不过,属性列表序列化有一定局限性,只有一小部分对象可以存储在属性列表中。
2. 归档模型对象
在 Cocoa 世界中,归档是另一种序列化形式,任何对象都可以实现。只要类中的每个属性是标量(如 int 或 float)或符合 NSCoding 协议
超级会员免费看
订阅专栏 解锁全文
48

被折叠的 条评论
为什么被折叠?



