博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【iOS开发】如何将 Array 存储在本地
阅读量:5958 次
发布时间:2019-06-19

本文共 577 字,大约阅读时间需要 1 分钟。

做开发的时候,我们经常需要将数据保存在plist文件中,用这种方式来将数据写入磁盘,这样退出 App 再打开的话,上次写入的文件还在。

常用的方法是这个

func  writeToFile(path:String, atomically useAuxiliaryFile:Bool) ->Bool

然而 writeToFile 这个函数却只属于 NSArray

假如我自定义了一个Person类来写人,然后用数组来存储Person对象,那么我将把这个数组初始化为

let personArray :[Person] = [Person]()

这时,这个 personArray 就只能是 Array,而不是 NSArray。

想要把它存储在本地plist文件中,需要用到 NSKeyedArchiver  NSKeyedUnarchiver

但是在此之前,你需要把你的类改造一下。

起初的类
需要加入的内容

你需要在你的类中实现 encode function,实现起来也很简单,见上图。而一旦 encode 方法被实现,NSKeyedArchiver 和 NSKeyedUnarchiver 马上就被“解锁”并可以替代 writeToFile 方法啦!

将peopleArray存储到本地plist

将peopleArray从本地plist中取出

附上

转载地址:http://cvrxx.baihongyu.com/

你可能感兴趣的文章
golang xml和json的解析与生成
查看>>
javascript 操作DOM元素样式
查看>>
Android 内存管理 &Memory Leak & OOM 分析
查看>>
【查找算法】基于存储的查找算法(哈希查找)
查看>>
JavaWeb网上图书商城完整项目--day02-10.提交注册表单功能之页面实现
查看>>
记录一下这次web实训的两个网站
查看>>
POJ-1830 开关问题 高斯消元
查看>>
做程序开发的你如果经常用Redis,这些问题肯定会遇到
查看>>
006android初级篇之jni数据类型映射
查看>>
Java 集合框架查阅技巧
查看>>
apache配置虚拟主机
查看>>
CollectionView水平和竖直瀑布流的实现
查看>>
前端知识复习一(css)
查看>>
spark集群启动步骤及web ui查看
查看>>
利用WCF改进文件流传输的三种方式
查看>>
Spring学习总结(2)——Spring的常用注解
查看>>
关于IT行业人员吃的都是青春饭?[透彻讲解]
查看>>
钱到用时方恨少(随记)
查看>>
mybatis主键返回的实现
查看>>
org.openqa.selenium.StaleElementReferenceException
查看>>