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

直接上代码:

#import <Foundation/Foundation.h>

//使用宏定义创建

#define kPathFileOpeartion(subpath) \

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


int main(int argc,const char * 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:data attributes:nil];

        if(ret3) {

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

        }

        else {

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

        }

     //浅度遍历

        NSArray *contents = [fileManager contentsOfDirectoryAtPath:@"/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 = [fileManager attributesOfItemAtPath:kPathFileOpeartion(@"test.txt") error:nil];

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

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

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

            NSLog(@"YES");

        }

        else {

            NSLog(@"NO");

        }


    }

    return 0;

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值