自定义新的NSUserDefaults功能的文件

本文介绍了在iOS中,当数据量较大且读取操作有限时,如何自定义一个新的NSUserDefaults功能来存储文件,以避免与标准NSUserDefaults冲突。通过提供源代码示例,展示了如何创建一个独立的文件来实现数据持久化,特别是适用于缓存请求结果和保存用户输入记录的场景。
摘要由CSDN通过智能技术生成

使用NSUserDefaults存储的一般是用户名、id等少量的重要信息,数据量过大的话并不太适合,过多的键值取值找起来很费劲。

对于一些必要持久化的数据,重复对象类型使用数据库,在下使用的是JKDBModel,工具对FMDB二次封装,实现了很多CoreData的功能。

今天主要是针对数据量大、读取操作有限而且仅要求存储一个对象的持久化情况。比如页面需要缓存请求结果方便下次展示、用户输入框比较多的页面需要下次打开时自动显示上次入记录。为了这个需求,特意写了一个鸡肋的小功能,存储一个单独的plist文件,防止与NSUserDefaults的值发生冲突,方便读写。

NSUserDefaults是在本地存储的一个plist文件记录数据,所以自己重写一个plist文件存入沙盒比较合适。

上代码:

  • 使用方法
    //需要读取的key
    NSString *keyStr;
    //需要写入的数据
    //如果是自定义类型可以用`MJExtension`工具先转换成字典
    id vObj;

    keyStr = @"value";
    vObj = @{@"value":@"这是这个页面要存储的数据"};

//使用方法
    //在使用对象文件中 存储
    kFDGSavePageVal(vObj);
    
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值