iOS之数据存储

时间:2021-04-13 20:33:23

iOS之数据存储
注意:Library/Catches中存储的数据在手机存储紧张的时候会被系统删除掉,这一点需要注意,如果是下载比较重要的数据,那么还是建议还是放到Document中。

一、针对以上文件夹我们以最通俗的理解方式来说

如果你做个记事本的app,那么用户写了东西,总要把东西存起来。那么这个文件则是用户自行生成的,就放在documents文件夹里面。

如果你有一个视频类app如bilibili,需要从服务器下载视频。那么这些下载下来的东西就放在library/cache中。

据说apple对数据存放地址很严格,放错了有可能被拒。主要原因是ios的icloud的同步问题,所以大家还是弄清楚各个地址的意义,慎重为好。

二、以下是获取APP文件目录的方法

//Home目录
NSString *homeDirectory = NSHomeDirectory();

//Document目录 documents (Documents)
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *path = [paths objectAtIndex:0];

//Libaray目录 various documentation, support, and configuration files, resources (Library)
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory,NSUserDomainMask,YES);
NSString *path = [paths objectAtIndex:0];

//Cache目录 location of discardable cache files (Library/Caches)
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,YES);
NSString *path = [paths objectAtIndex:0];