
存储数据
|
159
4.
最后你又到
iPhone
上玩这个游戏,你惊讶地发现你的进度“丢失”了。你立马
删除了这个
App
,然后在苹果商店中给这个
App
打分为“
1
星”。这个
App
的
开发者也许就破产了,并且在贫民窟中孤独终老。
要解决这个问题,我们可以将数据保存在本地
UserDefaults
中,只有在和键值存
储中的数据进行对比之后才更新数据。在保存改变时,将它和本地
UserDefaults
中的值进行比较;如果键值存储中的值更小,将本地
NSUserDefault
中的值提交
到键值存储,覆盖旧值。如果键值存储中的值更大,将键值存储中的值覆盖本地
UserDefaults
中的值。在读取数据时,总是和本地存储中的值进行比较。
每个应用程序能够存储的键值存储被限制在
1MB
。如果你试图存储比这个更多的
数据,那么这个值将不会保存。每个值的限制为
1MB
,最多允许存储
1024
个值。
5.5
何时使用文件
,
何时使用数据库
问题
什么时候用文件,什么时候用数据库来存储数据?
解决方案
下列情况可以考虑文件存储:
•
我们需要一次读取文件的全部内容。
•
文件不大。
•
文件的处理和读取都非常简单,读取信息不会占用太多的
CPU
资源。
下列情况可以考虑数据库:
•
文件非常大,而且我们不需要一次加载所有内容。
•
我们仅需要访问文件中的少量信息。
•
我们需要快速加载文件中指定的部分内容。
•
在读取文件的过程中我们还需要修改它。