黑马程序员--NSFileManage

 -----------android培训、java培训、java学习型技术博客、期待与您交流!------------

  -----------并不是生来就是大神、代码量决定一切、其他都是假象、----------- 

:为什么要学习NSFileManage

        : 学完之后你就能明白 平时我们用的创建文件夹 、文件 、复制 剪贴 查找 等功能到底是怎么形成的了

学习重点:多敲记住方法

         NSString *path = @"/Users/lulu/Desktop/4.txt";

        //创建文件管理

        NSFileManager *fileManage = [NSFileManager defaultManager];

        //判断是否存在这个文件

        BOOL istxt = [fileManage fileExistsAtPath:path];

        NSString *path1 = @"/Users/lulu/Desktop/4.txt";

        NSString *path2 = @"/usr";

        //定义一个bool类型来判断是否时文件目录

        BOOL isDir;

        BOOL isExist = [fileManage fileExistsAtPath:path1 isDirectory:&isDir];

        //文件或者文件夹是否可读

        BOOL isRead = [fileManage isReadableFileAtPath:path1];

        NSLog(@"%d",isRead);

        //判断文件后者文件夹是否可写

        BOOL isWrite = [fileManage  isWritableFileAtPath:path1];

        NSLog(@"%d",isWrite);

        //判断文件或者文件夹是否可以删除

        BOOL isDelete = [fileManage isDeletableFileAtPath:path2];

        NSLog(@"%d",isDelete);

        NSString *path1 = @"/Users/lulu/Desktop/";

        NSFileManager *fileManage1 = [NSFileManager defaultManager];

        //获取文件或者文件夹的属性

        NSDictionary *ary = [fileManage attributesOfItemAtPath:path error:nil];

        //NSLog(@"%@",ary);

        //查找指定目录下的所有文件 返回数组 然后转换成string 打印出来

        NSArray *array = [fileManage subpathsAtPath:path1];

        //path== @"/Users/lulu/Desktop/3.txt" 将查询的结果打印到3.txt

        [array writeToFile:path atomically:YES];

        //获取当前路径下的所有直接子路径的内容 想到雨dos中的dir

        NSArray *arr = [fileManage  contentsOfDirectoryAtPath:path1 error:nil];

        NSLog(@"%@",arr);

                   ----------------------------------------------------------------------------------------------------------------------------------------

 //copy 如果目录已存在同名文件,则无法复制

        //思路:拷贝1个文件到另外一个目录,如果目标目录有相同文件名存在 责拷贝失败。

//如果拷贝失败责作,提示是否覆盖当前文件,个人理解的覆盖就是 删除+拷贝

//如果确定覆盖 那就删除目标目录的同名文件 然后拷贝进来 完了

//创建两个地址 拷贝的目标文件和开背的目标地址

        NSString *sourcePath = @"/Users/lulu/Desktop/1.txt";

        NSString *GoalPath = @"/Users/lulu/Desktop/goodluck/1.txt";

//判断拷贝是否成功

        BOOL flag = [fileManage moveItemAtPath:sourcePath toPath:GoalPath error:nil];

        if(flag)//成功直接提示

        {

            NSLog(@"文件拷剪贴成功");

        

        }else{//不成功则进入这里

            NSLog(@"是否覆盖文件,1覆盖,0不覆盖");

            int a = 0;//设定一个变量用来接收 是否覆盖文件的指令

            scanf("%d",&a);

            if(a)//如果覆盖 责进入

            {

                BOOL isdelete = [fileManage removeItemAtPath:GoalPath error:nil];//删除目标目录的同名文件

                if(is delete)//如果删除成功责进入

                {

                    NSLog(@"删除成功");//监听

                    

                    

                BOOL move = [fileManage  moveItemAtPath:sourcePath toPath:GoalPath error:nil];//重新复制

                if(move)//监听

                {

                    NSLog(@"覆盖成功");

                }

                }else{

                    NSLog(@"失败");

                }

            }

        

        }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值