文件操作

来源:互联网 发布:软件正版化管理制度 编辑:程序博客网 时间:2024/06/11 04:15
文件操作中包括有创建文件,创建目录,写文件,读文件,复制文件,删除文件等内容

实验中我们需使用命令窗口帮助我们实现文件操作中的各个功能,希望对大家有帮助
命令窗口
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])
        {
           
BOOLb = [fm createFileAtPath:pathscontents:[strdataUsingEncoding:NSUTF8StringEncoding]attributes:nil];//写文件前先创建一个文件
           
NSLog(@"%@",b==1?@"yes":@"no");
        }
       
else
           
NSLog(@"文件已创建");
       
BOOL b = [str writeToFile:paths atomically:YESencoding: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 = [pathsobjectAtIndex:0];//获取文件路径
           
if(![fm fileExistsAtPath:[url.path stringByAppendingString:@"/你是猪吗"]])
            {
               
BOOLr = [fmcreateDirectoryAtPath:[url.path stringByAppendingString:@"/你是猪吗"]withIntermediateDirectories:YES attributes:nil error:nil];
               
NSLog(@"%@",r==1?@"yes":@"no");
            }
           
else
            {
               
NSLog(@"文件已创建");
            }
           
BOOLr = '\0';
           
for(inti=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 = [pathsobjectAtIndex:0];
           
NSString*filePath = url.path;
           
BOOLr = [fmcreateDirectoryAtPath:[filePathstringByAppendingString:@"/你是猪吗"]withIntermediateDirectories:YES attributesnil errornil];
           
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])//判断该文件是否已被创建
        {
           
BOOLr = [fmcreateDirectoryAtPath:dicwithIntermediateDirectories: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 encodingNSUTF8StringEncodingerror :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 = [fmcontentsOfDirectoryAtPath:pathserror:nil];
        NSLog(@"%@",content);
0 0
原创粉丝点击