1.每一个应用程序都有本身的存储空间。spa
2.应用程序不能访问其余程序的存储空间。同步
3.应用程序请求的数据都要经过权限检测,不符合条件的不被容许。string
默认,沙盒有3个目录:object
Documents:应用程序将其数据存储在documents中。file
Library:基于NSUserDefaults的首选项设置存储在Library/Preferences文件夹中。搜索
tmp:临时文件夹,同步时,iTunes不会备份/tmp中的文件,再也不须要这些文件时,应用程序须要负责删除该文件。权限
当设备同步时,iTunes会备份Documents和Libaray目录下的文件,当重启时,会丢弃全部的tmp文件。请求
获取 Documents路径:程序
NSArray *array=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);im
NSString *path=[array objectAtIndex:0];
NSDocumentDirectory:查询Documents目录
NSUserDomainMask:限制搜索范围在程序的沙盒以内。
试图访问Documents目录下某个文件的路径:
NSString *filePath=[path stringByAppendingPathComponent:@"image.png"];
stringByAppendingPathComponent:会在Documents路径后面追加“image.png”,而且会自动添加或去掉路径中多余的“/”,适合拼接地址,不适用于Url.
获取临时路径:
NSString *temp=NSTemporaryDirectory();
获取 Library路径:
NSArray *array=NSSerachPathForDirectoriesInDomains(NSLibraryDirectory,NSUserDomainMask,YES);
NSString *path=[array objectAtIndex:0];