OC语言学习10-NSFileManager类的应用

来源:互联网 发布:tonymoly口红比mac 编辑:程序博客网 时间:2024/05/16 15:48

直接上代码:

#import <Foundation/Foundation.h>

//使用宏定义创建

#define kPathFileOpeartion(subpath) \

[NSString stringWithFormat:@"/Users/ch/Desktop/OC/%@",subpath]


int main(int argc,constchar * argv[]) {

    @autoreleasepool {

        NSFileManager *fileManager = [NSFileManagerdefaultManager];

        

        NSError *error =nil;

        //第一个参数:创建目录;第二个参数;是否创建中间目录

        //第三个参数:创建目录或文件的属性;第四个参数:如果创建失败返回错误原因

        BOOL ret = [fileManagercreateDirectoryAtPath:@"/Users/ch/Desktop/OC/test"withIntermediateDirectories:NOattributes:nilerror:&error];

        //第二种方式

        BOOL ret2 = [fileManagercreateDirectoryAtPath:kPathFileOpeartion(@"test1/test1-1")withIntermediateDirectories:YESattributes:nilerror:&error];

        

        if(ret) {

            NSLog(@"目录创建成功");

        }

        else {

            NSLog(@"目录创建失败 resaon: %@",error);

        }

        //第二种方式

        if(ret2) {

            NSLog(@"目录创建成功");

        }

        else{

            NSLog(@"目录创建失败 resaon%@", error);

        }

        NSString *string =@"创建一个文本文件,这是文本内容";

        NSData *data = [stringdataUsingEncoding:NSUTF8StringEncoding];

        BOOL ret3 = [fileManagercreateFileAtPath:kPathFileOpeartion(@"test.txt")contents:dataattributes:nil];

        if(ret3) {

            NSLog(@"test.txt文件创建成功");

        }

        else {

            NSLog(@"文件创建失败");//创建文件时如果已经存在这个文件则会覆盖

        }

     //浅度遍历

        NSArray *contents = [fileManagercontentsOfDirectoryAtPath:@"/Users/ch/Desktop/OC/"error:nil];

        NSLog(@"contents: %@", contents);

        //深度遍历

        contents = [fileManager subpathsOfDirectoryAtPath:@"/Users/ch/Desktop/OC/FileOperation"error:nil];

        NSLog(@"contents:%@",contents);

        //移动文件

        [fileManager moveItemAtPath:@"test.txt"toPath:kPathFileOpeartion(@"test/test.txt")error:nil];

        //拷贝文件

        [fileManager copyItemAtPath:@"test/test.txt"toPath:kPathFileOpeartion(@"test/test.txt")error:nil];

        //删除文件

        [fileManager removeItemAtPath:@"test.txt"error:nil];

        //打印文件信息

        NSDictionary *dict = [fileManagerattributesOfItemAtPath:kPathFileOpeartion(@"test.txt")error:nil];

        NSLog(@"info: %@",dict);

        //查看一个文件是否在这目录下

        if ([fileManagerfileExistsAtPath:kPathFileOpeartion(@"test.txt")]){

            NSLog(@"YES");

        }

        else {

            NSLog(@"NO");

        }


    }

    return0;

}



原创粉丝点击