1、NSFileManager介绍
顾名思义, NSFileManager是用来管理文件系统的 它可以用来进行常见的文件\文件夹操作(拷贝、剪切、创建等)
NSFileManager使用了单例模式singleton 使用defaultManager方法可以获得那个单例对象 [NSFileManager defaultManager]
2、NSFileManager判断文件文件夹
1、- (BOOL)fileExistsAtPath:(NSString *)path; path这个文件或文件夹(目录)是否存在
2、- (BOOL)fileExistsAtPath:(NSString *)path isDirectory:(BOOL *)isDirectory; path这个文件或文件夹是否存在, isDirectory代表是否为文件夹
3、- (BOOL)isReadableFileAtPath:(NSString *)path; path这个文件或文件夹是否可读
4、- (BOOL)isWritableFileAtPath:(NSString *)path; path这个文件或文件夹是否可写
5、- (BOOL)isDeletableFileAtPath:(NSString *)path; path这个文件或文件夹是否可删除
3、NSFileManager管理路径
1、- (NSDictionary *)attributesOfItemAtPath:(NSString *)path error:(NSError **)error; 获得path这个文件\文件夹的属性
2、- (NSArray *)subpathsAtPath:(NSString *)path; 查找给定路径下的所有子路径,返回一个数组, 深度查找,不限于当前层,也会查找package的 内容。
3、- (NSArray *)subpathsOfDirectoryAtPath:(NSString *)path error:(NSError **)error; 获得path的所有子路径(后代路径)
4、- (NSArray *)contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)error; 获得path的当前子路径(path下的所有直接子内容,path必须是一个目录)
5、- (NSData *)contentsAtPath:(NSString *)path; 获得文件内容
4、NSFileManager文件操作
1、- (BOOL)createDirectoryAtPath:(NSString *)path withIntermediateDirectories:(BOOL) createIntermediates attributes:(NSDictionary *)attributes error:(NSError **)error; 只能创建文件夹(createIntermediates为YES代表自动创建中间的文件夹) 注意如果要创建的目录已经存在,则本次创建失败
实例:
//1、定义路径
NSString *path = @"/Users/liwei/Desktop/test/subcc/";
//2、创建对象
NSFileManager *fileManager = [NSFileManager defaultManager];
//3、创建目录
// createDirectoryAtPath 路径
// withIntermediateDirectories 是否自动创建路径中的所有文件夹
// attributes 文件夹属性
// error 错误信息
BOOL flag = [fileManager createDirectoryAtPath:path withIntermediateDirectories:NO attributes:nil error:nil];
if (flag) { NSLog(@"目录创建成功!");
//写入文件
NSString *str =@"测试文件内容";
flag = [str writeToFile:[NSString stringWithFormat:@"%@/1.txt",path] atomically:YES
encoding:NSUTF8StringEncoding error:nil];
if (flag) { NSLog(@"文件写入成功!");
}
}
2、- (BOOL)copyItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath error:(NSError **)error;
拷贝,如果目标目录已经存在同名文件,则无法拷贝
3、- (BOOL)moveItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath error:(NSError **)error;
移动(剪切)
4、- (BOOL)removeItemAtPath:(NSString *)path error:(NSError **)error; 删除
5、- (BOOL)createFileAtPath:(NSString *)path contents:(NSData *)data attributes:(NSDictionary *)attr;
创建文件
5、NSFileManager文件下载思路
1.发送请求给服务器,要求下载某个文件
2.服务器发出响应,返回文件数据
3.手机客户端利用NSData来存放服务器返回的文件数据
4.利用NSFileManager将NSData里面的文件数据写到新的文件中.(createFileAtPath)
本文详细介绍了NSFileManager的功能及其常用方法,包括文件与文件夹的判断、路径管理及文件操作等,并提供了一个创建目录并写入文件的示例。
5232

被折叠的 条评论
为什么被折叠?



