背景:
项目里有一些具有收藏、点赞的需求需要存储到本地的数据,并且能看到收藏列表,因此要用到swift的数据存储的知识。发现本地化比OC要简单很多。
模型处理
被存储的对象要准守Codable协议,这样就能直接用JSONEncoder()和JSONDecoder()进行编码和解码进行data的转换存入到内存里面,这也是swift的高级之一,不用像swift那样进行解析匹配。这也是swft4.0推出的Codable,它可以自动将json数据进行解析为准守了Codable的数据模型。(我们项目里使用的是第三方数据解析框架ObjectMapper),下面主要介绍一下文件的操作和解析
创建统一的管理器
根据不同的业务来创建对于的filePath
//
importFoundation
importRxSwift
importRxCocoa
/// 收藏车型。
/// 车型对比
classCollectDataManager:NSObject{
enumDataType {
casecarModelType
caseCarHistory
caseCarTrimCompareType
}
static let shared: CollectDataManager = {
return CollectDataManager()
}()
private override init() {
super.init()
}
获取并构建存储地址
FileManager类
priva