iOS读取沙盒目录文件

作者: smile丽语 | 来源:发表于2016-07-11 15:26 被阅读981次

iOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒。它包含三个文件夹:

  1. Temp:这个目录用于存放临时文件,保存应用程序再次启动过程中不需要的信息。

  2. Documents: 苹果建议将程序中建立的或在程序中浏览到的文件数据保存在该目录下,iTunes备份和恢复的时候会包括此目录,如用户信息等永久性文件;

  3. Library: 它包含两个文件夹 caches 和 preferences
    Library/Caches:存放缓存文件,iTunes不会备份此目录,此目录下文件不会在应用退出删除,如图片、视频缓存;
    Library/Preferences:包含应用程序的偏好设置文件;

//沙盒的根目录
NSString *homePath = NSHomeDirectory();

//沙盒Documents路径
NSString *docuPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];

//沙盒中Library路径
NSString *libPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) lastObject];

//沙盒中Library/Caches路径
NSString *cachesPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];

//沙盒中Temp路径
NSString *tempPath = NSTemporaryDirectory();

举个栗子:

// 拿到当前版本号
NSString *currentVersion = [NSBundle mainBundle].infoDictionary[@"CFBundleVersion"];

// 将当前版本号存进沙盒
[[NSUserDefaults standardUserDefaults] setObject:currentVersion forKey:@"CFBundleVersion"];
[[NSUserDefaults standardUserDefaults] synchronize]; //synchronize:同步 不可少这句!!!

// 从偏好设置里读取版本号
NSString *str = [[NSUserDefaults standardUserDefaults] objectForKey:currentVersion];
cell.detailTextLabel.text = str;
读取App版本号.png

另外,APPStore中有一条明确规定,你的APP中缓存文件只能保存在沙盒路径下Caches文件夹或Temp文件夹下,不然将会被拒。而Temp文件夹下内容将会在APP退出时自动清除,所以我们清除APP缓存主要是清除Caches文件夹下的内容。

如果你想了解相关清理缓存 iOS利用SDWebImage实现缓存的计算与清理,请移步:http://www.jianshu.com/p/e77add077477

相关文章

  • iOS本地沙盒文件读取浏览下载,日志读取下载

    传统沙盒文件读取方式 谈到iOS本地沙盒文件读取下载,给人的初步印象是苹果对应用下面的沙盒文件管理严格,只能通过已...

  • iOS读取沙盒目录文件

    iOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒。它包含三个文件夹:...

  • iOS 文件操作

    iOS文件(沙盒目录,文件创建、移动、复制等) 目录获取获取沙盒的主目录路径: (NSString *)homeD...

  • iOS 数据持久化知识汇总(1)—————存储路径

    一、沙盒和沙盒存储路径 1、沙盒是什么 iOS 每个iOS应用都有自己的应用沙盒,应用沙盒就是文件系统目录 。所...

  • 沙盒

    一、iOS沙盒机制介绍(1)概念:每个ios应用都有自己的应用沙盒,应用沙盒就是文件系统目录,与其他应用放入文件 ...

  • 基础篇- 沙盒以及文件的操作和存取

    来感受下iOS app的沙盒 沙盒机制(sandBox) iOS应用程序只能在为该改程序创建的文件系统中读取文件,...

  • 沙盒机制

    沙盒机制 iOS程序默认情况下只能对自己创建的文件系统读取文件,这个独立、封闭、安全的空间,被称为“沙盒”。 沙盒...

  • iOS 沙河路径

    沙河路径 每个iOS 应用都有自己的沙盒路径,应用沙盒就是文件系统目录应用沙盒文件目录:应用程序包、Documen...

  • iOS 文件管理,文件操作小结

    一、iOS中的沙盒机制 •iOS应用程序只能对自己创建的文件系统读取文件,这个独立、封闭、安全的空间,叫做沙盒。它...

  • 沙盒文件以及沙盒文件路径、和本地存储

    一、iOS中的沙盒机制 iOS应用程序只能对自己创建的文件系统读取文件,这个独立、封闭、安全的空间,叫做沙盒。每个...

网友评论

    本文标题:iOS读取沙盒目录文件

    本文链接:https://www.haomeiwen.com/subject/qnxjjttx.html