54、iOS 文档数据存储与归档技术解析

iOS 文档数据存储与归档技术解析

1. 数据整理与文件包装器

1.1 -contentsForType:error: 方法的问题

在处理文档数据时, -contentsForType:error: 方法的核心是返回代表文档的原始数据,但它并不负责数据的存储方式。设计“将图像存储在单个文件中”的方案是不可行的,因为该方法不处理文件操作,文档可能以非文件的形式存储,如数据库记录或 XML 文件标签。

1.2 文件包装器(NSFileWrapper)

iOS 提供了文件包装器( NSFileWrapper )来解决这个问题。文件包装器是存储在一个或多个文件中的数据的抽象,有三种类型:常规、目录和链接,分别对应单个数据文件、文件系统目录和文件系统符号链接。文件包装器允许应用描述一组命名的数据块,并将它们组织在命名目录的层次结构中。当 UIDocument 存储在文件 URL 中时,文件包装器就相当于文件和文件夹。通过保持这种抽象, UIDocument 可以轻松地在网络上传输数据或将包装器转换为数据库记录。

1.3 使用文件包装器

使用文件包装器并不困难。常规文件包装器代表字节数组,类似于 NSData ;目录文件包装器包含任意数量的其他文件包装器。包装器与文件/文件夹的一个显著区别是,包装器有一个首选名称和一个键。键是唯一标识包装器的字符串,首选名称是它希望被识别的字符串。如果首选名称唯一,键和首选名称将相同;如果向目录包装器添加两个或多个具有相同首选名称的包装器,

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值