iOS 在本地存储数据
Posted
技术标签:
【中文标题】iOS 在本地存储数据【英文标题】:iOS Store Data Locally 【发布时间】:2016-01-13 13:21:19 【问题描述】:我正在制作一个包含公司产品列表的应用。数据不需要用户修改。我怎样才能保存这些信息?下载应用时,数据必须已在本地存在。
【问题讨论】:
plist vs core data vs NSUserDefaults-***.com/a/7059445/1692651。另一个选项是 Realm - github.com/realm/realm-cocoa 在提出这个问题时几乎没有做任何研究。 【参考方案1】:根据您的要求,Plist 或 SQLite 对您来说是不错的选择。
为什么选择 Plist
因为它是轻量级的。
为什么选择 SQLite
如果您想对您的数据执行查询。
【讨论】:
【参考方案2】:您可以将数据保存在 sqlite 或 coredata 中。对于已经在数据库中填充数据,您可以使用“sqlite manager”并在 sqlite manager 中运行您的查询并将其保存在桌面(您想要的位置)上。创建填充数据库后,将其拖到您的项目中并做任何您想做的事情。您已经在这里填写了数据库。
【讨论】:
【参考方案3】:您可以使用 NSUserdefaults 或 CoreData,此外还有一个名为 Realm 的第三方库。
还要检查这个问题: storing data locally on the iphone
编辑 答案由 Sr.Richie 在链接中提供:
对于简单数据,您应该使用 NSUserDefaults。 CoreData 非常酷,但主要用于存储数据库结构,并引入了复杂性(但我喜欢它:))。如果你只需要存储 String、Array 等(基本上是 prefs),你可以使用 NSUserDefaults:
例如:
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; //load NSUserDefaults
NSArray *fakeFavs = [[ NSArray alloc] initWithObjects:@"2",@"4", @"100", nil]; //declare array to be stored in NSUserDefaults
[prefs setObject:fakeFavs forKey:@"favourites"]; //set the prev Array for key value "favourites"
【讨论】:
以上是关于iOS 在本地存储数据的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Objective-C iOs 8 上将 ParseObject 存储在本地数据存储和 Parse Cloud 中?