基础数据持久化:归档、复制与 SQLite3 应用
1. 数据持久化方法概述
在数据持久化方面,属性列表序列化虽然简单易用,但存在一定局限性,仅能存储一小部分对象。接下来我们将探讨更强大的方法,包括归档模型对象、实现复制协议以及使用 iOS 嵌入式 SQLite3 数据库。
2. 归档模型对象
- 归档概念 :在 Cocoa 环境中,归档是一种更通用的序列化形式,任何对象都可实现。只要类中的属性为标量(如 int 或 float)或符合 NSCoding 协议的类实例,对象就能完全归档。多数能存储数据的 Foundation 和 Cocoa Touch 类都符合 NSCoding 协议(如 UIImage 是例外)。
- NSCoding 协议实现 :
- 编码方法 :
- (void)encodeWithCoder:(NSCoder *)encoder
{
[encoder encodeObject:foo forKey:kFooKey];
[encoder encodeObject:bar forKey:kBarKey];
[encoder encodeInt:someInt forKey:kSomeIntKey];
[encoder encodeFloat:someFloat forKey:kSomeFloatKey]
}
超级会员免费看
订阅专栏 解锁全文
4

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



