1.文件操作分两个部分
1.1.对文件本身的操作,需要使用一个类,NSFileManager。可以对文件进行拷贝到指定路径,删除等等对文件本身的操作,而不是对文件内容的操作
1.2.对文件内容的操作需要使用一个类,NSHandle。可以对文件的内容进行操作,修改文件的内容
2.文件的操作
2.1.首先在import下面定义一个文件的路径:#define PATH @"/Users/xxxxxx/Downloads";
2.2.创建一个单例的FileManager(文件管理器)对象
NSFileManager *fm = [NSFileManager defaultManager];
2.3.查看一个文件夹下面有哪些文件(浅度遍历)
NSError *error = nil; NSArray *array = [fm contentsOfDirectoryAtPath:PATH error:&error]; if(error){ NSLog(@"%@",error); exit(-1); }else{ NSLog(@"%@",array); }
2.4.深度遍历(遍历当前目录,以及当前目录下子目录)
array = [fm subpathsOfDirectoryAtPath:PATH error:&error]; if(error){ NSLog(@"%@",error); exit(-1); }else{ NSLog(@"%@",array); }
2.5.创建目录(withIntermediateDirectories如果设置为no则没有中间目录就会报错,因为没有二级目录无法创建三级目录,设置为YES的时候,如果没有二级目录时会自动创建二级目录,从而创建三级目录)
[fm createDirectoryAtPath:[NSString stringWithFormat:@"%@/dir",PATH] withIntermediateDirectories:YES attributes:nil error:&error]; if(error){ NSLog(@"%@",error); exit(-1); }
2.6.创建一个文件
[fm createFileAtPath:[NSString stringWithFormat:@"%@/dir/testFile",PATH] contents:[@"hello world" dataUsingEncoding:NSUTF8StringEncoding] attributes:nil];
2.7.删除一个目录或者文件
fm removeItemAtPath:[NSString stringWithFormat:@"%@/dir/testFile",PATH] error:&error]; [fm removeItemAtPath:[NSString stringWithFormat:@"%@/dir",PATH] error:&error]; if(error){ NSLog(@"%@",error); exit(-1); }
2.8.拷贝文件或者目录
[fm copyItemAtPath:[NSString stringWithFormat:@"%@/dir",PATH] toPath:[NSString stringWithFormat:@"%@/mydir",PATH] error:&error]; if(error){ NSLog(@"%@",error); exit(-1); }
2.9.剪切文件或者文件夹
[fm moveItemAtPath:[NSString stringWithFormat:@"%@/dir",PATH] toPath:[NSString stringWithFormat:@"%@/mydir/dir",PATH] error:&error]; if(error){ NSLog(@"%@",error); exit(-1); }
时间: 2024-09-29 02:59:21