Objective-C NSFileManager 文件管理总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Objective-C NSFileManager 文件管理总结相关的知识,希望对你有一定的参考价值。

createFileAtPath //创建文件

        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *strpath = [NSString stringWithFormat:@"%@/file1.txt",NSHomeDirectory()];
        NSString *strdata = @"test";
        
        bool bRet = [fm createFileAtPath:strpath contents:strdata attributes:nil];
        if(!bRet)
        {
            NSLog(@"create file error");
        }


copyItemAtPath  //拷贝文件

        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *strpath1 = [NSString stringWithFormat:@"%@/file1.txt",NSHomeDirectory()];
        NSString *strpath2 = [NSString stringWithFormat:@"%@/file2.txt",NSHomeDirectory()];
        
        bool bRet = [fm copyItemAtPath:strpath1 toPath:strpath2 error:nil];
        if(!bRet)
        {
            NSLog(@"copy file error");
        }

moveItemAtPath  //移动文件

        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *strpath1 = [NSString stringWithFormat:@"%@/file1.txt",NSHomeDirectory()];
        NSString *strpath2 = [NSString stringWithFormat:@"%@/file2.txt",NSHomeDirectory()];
        
        bool bRet = [fm moveItemAtPath:strpath1 toPath:strpath2 error:nil];
        if(!bRet)
        {
            NSLog(@"move file error");
        }

removeItemAtPath   //删除文件

        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *strpath1 = [NSString stringWithFormat:@"%@/file1.txt",NSHomeDirectory()];
        
        bool bRet = [fm removeItemAtPath:strpath1 error:nil];
        if(!bRet)
        {
            NSLog(@"delete file error");
        }


attributesOfItemAtPath   //获取文件属性, 文件大字。返回NSDictionary

        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *strpath1 = [NSString stringWithFormat:@"%@/log.txt",NSHomeDirectory()];
        
        NSDictionary *dic = [fm attributesOfItemAtPath:strpath1 error:nil];
        NSLog(@"%@",dic);

currentDirectoryPath   //获取当前文件夹

       NSFileManager *fm = [NSFileManager defaultManager];
       NSString *strpath = [fm currentDirectoryPath];
       NSLog(@"%@",strpath);

createDirectoryAtPath   //创建文件夹

        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *strpath1 = [NSString stringWithFormat:@"%@/testdir",NSHomeDirectory()];
        bool bRet = [fm createDirectoryAtPath:strpath1 withIntermediateDirectories:NO attributes:nil error:nil];
        if(!bRet)
        {
            NSLog(@"create dir error");
        }

fileExistsAtPath    //推断文件或文件夹是否存在

        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *strpath1 = [NSString stringWithFormat:@"%@/testdir",NSHomeDirectory()];
        bool bRet = [fm fileExistsAtPath:strpath1];
        if(!bRet)
        {
            NSLog(@"no file exist");
        }
        else
        {
            NSLog(@"file exist");
        }


enumeratorAtPath   //枚举文件夹,将子文件夹所有枚举

        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *strpath1 = [NSString stringWithFormat:@"%@/Desktop",NSHomeDirectory()];
        NSDirectoryEnumerator *dirs = [fm enumeratorAtPath:strpath1];
        
        NSString *dir;
        while (dir=[dirs nextObject]) {
            NSLog(@"%@",dir);
        }

contentsOfDirectoryAtPath   //枚举文件夹,不枚举子文件夹

        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *strpath1 = [NSString stringWithFormat:@"%@/Desktop",NSHomeDirectory()];
        NSArray *dirs = [fm contentsOfDirectoryAtPath:strpath1 error:nil];
        
        NSString *dir;
        for (dir in dirs)
        {
            NSLog(@"%@",dir);
        }













以上是关于Objective-C NSFileManager 文件管理总结的主要内容,如果未能解决你的问题,请参考以下文章

如何正确地将文本文件传递给 NSFileManager

选择 *.jpg 文件 Objective-C

Objective-c:将目录复制到另一个

在objective-c中检查文件扩展名

如何在objective-c中查找具有通配符表达式的多个文件

将图像从项目资源复制到Objective-C中的文档文件夹时出现问题