文件操作

文件操作中包括有创建文件,创建目录,写文件,读文件,复制文件,删除文件等内容

实验中我们需使用命令窗口帮助我们实现文件操作中的各个功能,希望对大家有帮助
命令窗口
ls     显示当前位置的所有文档
pwd     显示当前位置的文件位置
touch+test.txt     创建一个文件
cat test.txt     获取该文件中的
ls - al    打印所有根目录

        //1. 获取文件目录
        NSFileManager *fm = [NSFileManager defaultManager];
// 实例化一个文件管理对象
        NSArray *paths = [fm URLsForDirectory:NSDesktopDirectory inDomains:NSUserDomainMask];
// 获取桌面的文件路径
       
if (paths.count>0){
            NSURL *url = [paths objectAtIndex:0];
// 获取所有子文件中的第一个文件
            NSLog(@"%@",url.path);

        }

        //2. 判断文件是否存在
       
NSFileManager *fm = [NSFileManager defaultManager];
       
NSString *paths = @"/Users/scsys/Desktop" ; // 或者把桌面文件路径作为对象
       
BOOL b = [fm fileExistsAtPath :paths]; // 判断桌面文件是否存在
       
NSLog ( @"%@" ,b==1? @"yes" : @"no" );
       
       
       
//3. 创建文件
       
NSFileManager *fm = [NSFileManager defaultManager];
       
NSString *paths = @"/Users/scsys/Desktop/1.txt" ; // 给定一个文件路径
       
NSData *data = [paths dataUsingEncoding:NSUTF8StringEncoding]; // 文件内容把路径作为内容写到文件中
       
BOOL b;
       
if (![fm  fileExistsAtPath :paths])
            b = [fm
createFileAtPath :paths contents :data attributes : nil ];
        NSLog ( @" 文件是否已创建: %@" ,b==1? @"yes" : @"no" );

       
//4. 写文件
       
NSFileManager *fm = [NSFileManager defaultManager];
       
NSString *paths = @"/Users/scsys/Desktop/ 你是猪么 ?.txt" ; // 给定一个文件路径
       
NSString *str = @" 你是猪么? " ;
       
if (![fm  file ExistsAtPath :paths])
        {
           
BOOL b = [fm  createFileAtPath :paths contents :[str dataUsingEncoding : NSUTF8StringEncoding ] attributes : nil ]; // 写文件前先创建一个文件
           
NSLog ( @"%@" ,b==1? @"yes" : @"no" );
        }
       
else
           
NSLog ( @" 文件已创建 " );
       
BOOL b = [str writeToFile:paths atomically: YES encoding:NSUTF8StringEncoding error: nil ];
       
NSLog ( @"%@" ,b==1? @"yes" : @"no" );
       
       
//5. 文件拷贝
       
NSFileManager *fm = [NSFileManager defaultManager];
       
NSArray *paths = [fm URLsForDirectory:NSDesktopDirectory inDomains:NSUserDomainMask];
       
if (paths. count >0)
        {
           
NSURL *url = [paths objectAtIndex :0]; // 获取文件路径
           
if (![fm  fileExistsAtPath :[url. path  stringByAppendingString : @"/ 你是猪吗 " ]])
            {
               
BOOL r = [fm createDirectoryAtPath :[url. path  stringByAppendingString : @"/ 你是猪吗 " ] withIntermediateDirectories : YES  attributes : nil  error : nil ];
               
NSLog ( @"%@" ,r==1? @"yes" : @"no" );
            }
           
else
            {
               
NSLog ( @" 文件已创建 " );
            }
           
BOOL r = '\0';
           
for ( int i=0;i<50;i++)
                r = [fm
copyItemAtPath :[url. path  stringByAppendingString : @"/ 你是猪吗 " ] toPath :[url. path  stringByAppendingFormat : @"/ 你是猪么 %d" ,i] error : nil ]; // 文件拷贝
           
NSLog ( @"%@" ,r==1? @"yes" : @"no" );
        }
       
       
//6. 文件夹重命名
       
NSFileManager *fm = [NSFileManager defaultManager];
       
NSArray *paths = [fm URLsForDirectory:NSDesktopDirectory inDomains:NSUserDomainMask];
       
if (paths. count >0)
        {
           
NSURL *url = [paths objectAtIndex :0];
           
NSString *filePath = url. path ;
           
BOOL r = [fm createDirectoryAtPath :[filePath stringByAppendingString : @"/ 你是猪吗 " ] withIntermediateDirectories : YES  attributes nil  error nil ];
           
NSLog ( @"%@" ,r==1? @"yes" : @"no" );
            [fm
moveItemAtPath :[filePath  stringByAppendingString : @"/ 你是猪吗 " ] toPath :[filePath  stringByAppendingString : @"/ 你是猪吗 11" ] error : nil ]; // 重命名就是把一个文件转移到另一个不存在的文件
        }
       
       
//7. 使用 NSFileManager 管理文件目录 // 使用沙盒存储
       
NSFileManager *fm = [NSFileManager defaultManager];
       
NSString *dic = @"/tmp/yang" ; // 定义一个目录名
       
if (![fm  fileExistsAtPath :dic]) // 判断该文件是否已被创建
        {
           
BOOL r = [fm createDirectoryAtPath :dic withIntermediateDirectories : YES  attributes : nil  error : nil ];
           
NSLog ( @"%@" ,r==1? @"yes" : @"no" );
        }
       
else
        {
           
NSLog ( @" 目录已经存在 " );
        }
//NSLog(@"%@",[fm removeItemAtPath:dic error:nil]==1?@"yes":@"no");// 移除文件
        [fm
createFileAtPath :[dic  stringByAppendingString : @"/text" ] contents : nil  attributes : nil ];
        [[dic
stringByAppendingString @"nihao" ] writeToFile :[dic  stringByAppendingString : @"/text" ] atomically : YES  encoding NSUTF8StringEncoding error  : nil ];
       
NSString *str = [NSString stringWithContentsOfFile:[dic stringByAppendingString: @"/text" ] encoding:NSUTF8StringEncoding error: nil ]; // 读取文件内容
       
NSLog ( @"%@" ,str);
       
       
       
//8. 在桌面创建文件
       
NSFileManager *fm = [NSFileManager defaultManager];
       
NSString *paths = @"/Users/scsys/Desktop/tex" ;
       
BOOL r = [fm createFileAtPath :paths  contents :[ @" 你好 " dataUsingEncoding : NSUTF8StringEncoding ] attributes : nil ]; // 在桌面创建一个文件
       
NSLog ( @" 创建是否成功: %@" ,r==1? @"yes" : @"no" );
       
       
//9.remove
       
NSFileManager *fm = [NSFileManager defaultManager];
       
NSString *paths = @"/Users/scsys/Desktop/tex" ;
       
BOOL r = [fm createFileAtPath:paths contents:[ @" 你好 " dataUsingEncoding:NSUTF8StringEncoding]attributes: nil ];
       
NSLog ( @" 是否创建成功: %@" ,r==1? @"yes" : @"no" );
       
BOOL r1 = [fm removeItemAtPath :paths  error : nil ];
       
NSLog ( @" 是否移除: %@" ,r1==1? @"yes" : @"no" );
       
       
//10. 获取当前文件的路径
       
NSFileManager *fm = [NSFileManager defaultManager];
       
NSString *str = [fm currentDirectoryPath];
       
NSLog ( @"%@" ,str);
       
       
//11. 目录的遍历
       
NSFileManager *fm = [NSFileManager defaultManager];
       
NSString *paths = @"/" ;
       
NSArray *content = [fm contentsOfDirectoryAtPath :paths error : nil ];
        NSLog ( @"%@",content);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值