文件: 文件夹(目录) 和 文件
一、NSFileManager 单例类
单例对象:用类方法 创建的 无论哪儿使用同一个类方法 创建的对象 都是同一个对象
单例类 : 只要是使用这个类创建的对象 就是同一个对象 fileManger ….. alloc init default
NSFileManager 单例类 创建的文件管理器 就是个单例对象
是用来管理 文件夹 或者是 文件 并不能够 管理文件的内容
1、创建方法
NSFileManager * fm = [NSFileManager defaultManager];
2、增 删 改 查
增:
BOOL ret=[fm createDirectoryAtPath:@"/Users/apple/Desktop/b/a"
withIntermediateDirectories:NO attributes:nil error:&e];
//第一个参:文件路径 + 文件名
//第二个参:是否创建中间路径 NO不用创建中间路径YES自动补齐中间路径
//第三个参数:是文件创建的属性 nil默认属性
//第四个参数: 是错误信息捕捉
ret=[fm createFileAtPath:newS contents:nil attributes:nil];
删:
删除 使用的是同一个方法
ret=[fm removeItemAtPath:[NSString stringWithFormat:@"%@/%@",PATH,@"a"] error:&e];
改:如果目标 文件夹已经有了 那么就不会实现
//拷贝 把A 文件 或者 A文件夹 拷贝到另一个路径下
ret = [fm copyItemAtPath:URL(@"file.txt") toPath:URL(@"m.txt") error:nil];
ret = [fm copyItemAtPath:URL(@"a") toPath:URL(@"b") error:nil];
//move 直接移动
[fm moveItemAtPath:URL(@"file.txt") toPath:URL(@"/b/file.txt") error:nil];
3、错误信息
NSError * e;
perror(">>>>>");
查
//浅度遍历
////只查看 本目录下的文件 或者是文件夹 不会查看子目录下的文件
NSArray *arr= [fm contentsOfDirectoryAtPath:URL(@"") error:nil];
//深度遍历
//遍历目录下的文件 以及子目录下的文件
NSArray *arr1 = [fm subpathsOfDirectoryAtPath:URL(@"b") error:nil];
//查看文件 / 文件夹的属性
NSDictionary * dic=[fm attributesOfItemAtPath:URL(@"m.txt") error:nil];
//获得文件大小 1G 传输数据的时候 需要控制一次传的数据量 100M
size_t size= [[dic objectForKey:@"NSFileSize"] integerValue];
//查看目录下时候存在文件 或者是目录 并且区分开 到底是文件还是目录
BOOL isDirectory = NO;
ret=[fm fileExistsAtPath:URL(@"file.txt") isDirectory:&isDirectory];
//返回值 ret表示 目录是否存在文件或者目录
//isDirectory来判断 如果isDirectory是1 就是目录
//如果返回isDirectory是0 就是文件
NSFileManager文件管理
NSFileManagerMthod2.png
NSFileManagerMthod1.png
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- NSFileManager:用于执行一般的文件系统操作,主要功能包括:从一个文件中读取数据,向一个文件中写入数据,...
- 版本 Xcode 8.2.1 一、NSHomeDirectory() 目录(Directories)在现在的操作系...
- iOS因为沙盒机制,所以只能访问通讯录、相册和App内的文件,下面就来说说如何进行文件管理。 App所产生的数据都...