1 Star 1 Fork 0

番薯 / DemoCache

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 1.01 KB
一键复制 编辑 原始数据 按行查看 历史
番薯 提交于 2018-01-02 00:00 . 完善功能示例

#DemoCache 多种缓存技术的实现

sqlite

FMDB

LKDB

plist

NSUserDefault

NSCoding

自定义类型的数据编码和解码操作

实现

自定义数据模型(继承NSObject) 1 实现协议 NSCoding

2 实现协议方法

2-1 /// 解码

- (instancetype)initWithCoder:(NSCoder *)aDecoder
{
    NSLog(@"initWithCoder");

    self = [super init];
    if (self)
    {
        self.textInput = [aDecoder decodeObjectForKey:@"textInput"];
    }

    return self;
}

2-2 /// 编码

- (void)encodeWithCoder:(NSCoder *)aCoder
{
    NSLog(@"encode");

    [aCoder encodeObject:textInput forKey:@"textInput"];
}

使用

// 编码
CodingObject *codingObject = [[CodingObject alloc] init];
codingObject.textInput = @"编码与解码";
NSData *object = [NSKeyedArchiver archivedDataWithRootObject:codingObject];

// 解码
CodingObject *codingObject = [NSKeyedUnarchiver unarchiveObjectWithData:data];
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Objective-C
1
https://gitee.com/potato512/democache.git
git@gitee.com:potato512/democache.git
potato512
democache
DemoCache
master

搜索帮助