文件操作-NSManager

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);
}

  

  

原文地址:https://www.cnblogs.com/zwhFighting/p/4553638.html