首页 > 代码库 > Objective-C NSFileManager 文件管理总结

Objective-C NSFileManager 文件管理总结

createFileAtPath //创建文件

        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *strpath = [NSString stringWithFormat:@"%@/file1.txt",NSHomeDirectory()];
        NSString *strdata = http://www.mamicode.com/@"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 文件管理总结