- (void)viewDidLoad {
[super viewDidLoad];
NSFileManager *fileManager = [NSFileManager defaultManager];
#pragma mark - 目录的操作
// 目录
NSArray *fileArr = [fileManager contentsOfDirectoryAtPath:@"/Users/jessy/Desktop/tab" error:nil];
NSLog(@"%@",fileArr);
for (NSString *detail in fileArr) {
NSLog(@"detail---%@",detail);
}
// 详细到每个子目录,,
NSArray *subArr = [fileManager subpathsOfDirectoryAtPath:@"/Users/jessy/Desktop/tab" error:nil];
NSLog(@"%@",subArr);
for (NSString *subDetail in subArr) {
NSLog(@"subDetail---%@",subDetail);
}
// 创建目录
BOOL createDir = [fileManager createDirectoryAtPath:@"/Users/jessy/Desktop/tab/23/12" withIntermediateDirectories:YES attributes:nil error:nil];
[self judgeName:createDir];
#pragma mark - 文件的操作
// 文件的创建与写入
NSString *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES).firstObject;
NSString *filePath = [path stringByAppendingPathComponent:@"fileTest.txt"];
NSString *message = @"ceshia";
if (![fileManager fileExistsAtPath:filePath]) {
BOOL createFile = [fileManager createFileAtPath:filePath contents:[message dataUsingEncoding:NSUTF8StringEncoding ] attributes:nil];
[self judgeName:createFile];
}
// 读取文件的内容
NSData *fileData = [fileManager contentsAtPath:filePath];
NSString *fileStr = [[NSString alloc]initWithData:fileData encoding:NSUTF8StringEncoding];
NSLog(@"%@",fileStr);
// 移动文件
NSString *cachePath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES).firstObject;
NSString *newPath = [cachePath stringByAppendingPathComponent:@"fileTest.txt"];
if (![fileManager fileExistsAtPath:newPath]) {
BOOL movePath = [fileManager moveItemAtPath:filePath toPath:newPath error:nil];
[self judgeName:movePath];
}
// 复制文件
if (![fileManager fileExistsAtPath:filePath]) {
BOOL copyFile = [fileManager copyItemAtPath:newPath toPath:filePath error:nil];
[self judgeName:copyFile];
}
// 比较两个文件的内容
BOOL result = [fileManager contentsEqualAtPath:newPath andPath:filePath];
if (result) {
NSLog(@"一样");
}else
{
NSLog(@"NO");
}
// 删除文件
BOOL removeFile = [fileManager removeItemAtPath:filePath error:nil];
[self judgeName:removeFile];
}
- (void)judgeName:(BOOL)name{
if (name) {
NSLog(@"成功");
}else{
NSLog(@"失败");
}
}
NSFileManager的使用
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 前言瞎扯 我们在做项目过程中难免会接触到存储文件这种操作,那么必然会和NSFileManager发生关系(你们想歪...
- 由于本人提交app的时候需要修改文件夹的名字,并且给 .m 文件增加函数名称,之前一直是手动操作,每次提交app的...
- 写在前面弄了下个人站...防止内容再次被锁定...所有东西都在这里面welcome~个人博客 所有方法 都很简单,...