Ios NSUserDefaults是swift中此应用程序理念的正确选择吗

Ios NSUserDefaults是swift中此应用程序理念的正确选择吗,ios,xcode,swift,nsuserdefaults,Ios,Xcode,Swift,Nsuserdefaults,我有一个超级简单的应用程序的想法,我正在建设,以获得更多的实践,在使用Swift。我只是想问一下,使用NSUserDefaults是否是最合适的选择。我将拥有的只是一个姓名列表,其中的号码与我将不时更新的每个姓名(号码)相关。我打算用一本词典来查数据 我认为核心数据对于这样的东西来说是杀伤力太大了 我只是想就如何为这个简单的应用程序保存数据的想法获得第二个意见 如果只有一本词典就可以了,谢谢。NSUserDefaults适用于像这样的小事情 NSUserDefaults.standardUser

我有一个超级简单的应用程序的想法,我正在建设,以获得更多的实践,在使用Swift。我只是想问一下,使用NSUserDefaults是否是最合适的选择。我将拥有的只是一个姓名列表,其中的号码与我将不时更新的每个姓名(号码)相关。我打算用一本词典来查数据

我认为核心数据对于这样的东西来说是杀伤力太大了

我只是想就如何为这个简单的应用程序保存数据的想法获得第二个意见


如果只有一本词典就可以了,谢谢。NSUserDefaults适用于像这样的小事情

NSUserDefaults.standardUserDefaults().setObject(**YOUR DICTIONARY**, forKey: **YOUR KEY**)

您可以使用NSUserDefault。但是,如果要存储数组或字典,您必须做一些额外的工作:

value参数只能是属性列表对象:NSData、NSString、NSNumber、NSDate、NSArray或NSDictionary。对于NSArray和NSDictionary对象,其内容必须是属性列表对象

您可以将
NSDictionary
转换为
NSData
,然后将其保存到
NSUserDefault

// Convert the dictionary and store
var data = NSKeyedArchiver.archivedDataWithRootObject(yourDict)
NSUserDefaults.standardUserDefaults().setObject(data, forKey: yourKey)

// Retrieving the dictionary
var savedData = NSUserDefaults.standardUserDefaults().dataForKey(yourKey)
var dict = NSKeyedUnarchiver.unarchiveObjectWithData(savedData)

希望这有帮助:)

将NSDictionary保存在.plist文件中。有关更多详细信息,请登录谷歌。有关固定数量的记录,您可以使用.plist或
NSUserDefaults
。如果你的记录会增加,那么最好是核心数据。或者你可以尝试写入一个简单的txt文件,每人一行,名字字符串用数字分隔,如果你喜欢的话。看看我的答案,我认为它应该是你正在寻找的。没有必要转换任何东西。NSDictionary可以使用两个都是NSString的键值对。