将字典快速存储在永久存储中 [英] Storing a dictionary in swift in permanent storage
本文介绍了将字典快速存储在永久存储中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
当我运行应用程序时,这里的代码会引发错误
this code here throws an error when I run the app
var dic :[NSObject: AnyObject] = ["name":"steph" , "status": "unemployed"]
NSUserDefaults.standardUserDefaults().setObject(array, forKey: "diction")
var retrievedDict = NSUserDefaults.standardUserDefaults().objectForKey("diction")! as NSDictionary
let g = dic["name"]
println(g)
这是怎么回事?
推荐答案
问题是 Dictionary 键必须是字符串.因此,与其将其声明为 [NSObject: AnyObject],您必须将其声明为 [String: AnyObject].您还试图从 dic 加载它,但您必须从retrededDict 加载它.
The problem is that the Dictionary key has to be a String. So instead of declaring it [NSObject: AnyObject] you have to declare it as [String: AnyObject]. Also you are trying to load it from dic but you have to load it from retrievedDict.
更新:Xcode 7.2 • Swift 2.1.1
let dic:[String: AnyObject] = ["name":"steph" , "status": "unemployed"]
NSUserDefaults().setObject(dic, forKey: "diction")
if let retrievedDict = NSUserDefaults().dictionaryForKey("diction") {
if let g = retrievedDict["name"] as? String {
print(g)
}
}
这篇关于将字典快速存储在永久存储中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文