加载应用程序时,我想知道我是否已将数据保存到磁盘。如果保存了,我就从磁盘加载,如果没有,我就保存。
例如,我想使用 NSUserDefaults.standardUserDefaults()
保存一个数组(人)
保存方法:
let defaults = NSUserDefaults.standardUserDefaults()
if let savedPeople = defaults.objectForKey("people") as? NSData
people = NSKeyedUnarchiver.unarchiveObjectWithData(savedPeople) as! [Person]
但是我怎么知道我是否已经在 viewDidLoad()
中保存了数据? ?我不想每次打开应用程序时都保存,而且它也会覆盖我之前修改的数据。
最佳答案
您将这样做:
override func viewDidLoad() {
super.viewDidLoad()
if let savedPeople = NSUserDefaults.standardUserDefaults().objectForKey("people") {
// Use savedPeople based on your need
} else {
NSUserDefaults.standardUserDefaults().setObject(myArray, forKey: "people")
}
}
关于ios - 数据持久化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32791654/