iOS中的沙盒机制
ios应用程序只能对自己创建的文件系统读取文件,这个“独立,封闭,安全”的空间我们称为沙盒。
它一般存放这个你的程序文件(可执行的文件)。图片。声音。视频,plist,sqlite数据以及其他文件
每个应用程序都有自己的独立的存储空间一般程序间不可以相互访问
当我们创建应用程序时 每个沙盒中含有三个文件
Documents ,Library 和tmp
documents 持久的数据都放在这个目录,可以在这个目录添加子目录itunues备份和恢复的时候,会包括此目录
Library : 设置程序的默认设置和其他状态
tmp:创建临时文件的目录,当我们的ios重启时会被情况掉
获取程序的根目录(home)目录
NSString *homePath = NSHomeDirectory();
获取Documents 目录
NSArray *paths = NSSearchPathForDirectoriesInDomins(NSDocumentDirectory,NSUserDominMask,YES)
NSString *docPath = [paths lastObject];
获取Library目录
NSArray *paths = NSSEarchPathFOrDirectoriesInDomains(NSLibraryDirectory,NSUSerDOmainMask,YES)
NSString *docPath = [paths LastObject];
获取Library 中的Cache
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,YES)
NSString * docPath = [paths lastObject];
获取tmp路径
NSString *tmp = NSTemporaryDirectory();
获取组成此路径的各个组成部分 pathComponents
提取路径的最后一个组成部分
lastPathCompent
删除路径的最后一个组成部分
stringByDeletingLastPathComponent;
pathExtentsion 取路径的扩展名
NSData是用来包装数据用的
NSdata存放的是二进制数据,这样就屏蔽了数据之间的差异 文本 图像 音频都可以用NSData表示
文件的操作类
NSFileManager类
数组只能将Bool NSNumber,NSString,NSData,NSDtate,NSArray,NSdictionary写入plist文件