2013-08-28 137 views
1

大家好我想知道NSUserDefaults和.plist文件有什么不同。提前致谢。NSUserDefaults和.plist文件有什么区别

+0

你可以检查这个SO帖子,http://stackoverflow.com/questions/7058858/should-i-use-nsuserdefaults-or-a-plist-to-store-data –

回答

4

NSUserDefaults也是一个PList,但主要区别在于推荐使用NSUserDefualts作为标志(例如“isUserLoggedIn”或“isFirstLaunch”)等小数据,但使用PLists存储大型分层数据。

除此之外您可以将Plist存储在您想要的任何位置(由iOS允许),但不能更改存储NSUserdefauls的位置。它由OS定义。

+0

因此,两个选项的持久化级别是相同的? – Asfanur

+0

让我再澄清一点,有没有什么方法可以让最终用户删除驻留在NSUserDefaults或.plist中的数据?例如,通过从现金中删除应用程序? – Asfanur

+0

@Asfanur:如果用户甚至有一点点知识关于iFunBox或iExplorer的誓言,然后他可以。 –

1

要使用NSUserDeafults或.plist(属性列表)是基于您的数据,您要保存多少数据。

NSUserDefaults是一个不可见和.plist,您可以读取和写入,而无法真正看到文件。

如果您有少量数据,则将其存储在NSUserDefaults中,如果您有更多数据或信息,请将其存储在.plist文件中。

谢谢。

3

您可以将NSUserDefaults视为您可以读取和写入的不可见.plist,而无法真正看到文件。使用NSUserDefaults,即使应用程序在多任务中被终止,您也可以恢复保存的值。 但是,如何在.plist和NSUserDefaults之间进行选择应基于需要保存多少数据。 Apple建议只将少量数据保存到NSUserDefaults中。如果你需要保存大量的信息,那么.plist是最好的选择。如果不是这样,当然核心 - 数据“的

参考文献:Difference between NSUserDefaults and .plist

1

用于存储货值均NSUserDefaults的东西很容易存储,你可以存储值values..just一行...