码迷,mamicode.com
首页 > 其他好文 > 详细

NSFileManager简单操作

时间:2016-05-12 14:58:58      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:

NSFileManager是什么?

通熟易懂的解释:NSFileManager是文件管理者,可以

1.能够创建文件夹, 创建 删除 赋值 移动

2.通过路径查找和拼接

代码演示:
#pragma mark  --NSFileManager 文件管理者
/**
 * 1.能够创建文件夹, 创建 删除 赋值 移动
   2.通过路径
   3.
 */

-(void)initData{
   
    //文件管理者都是系统的一个单例对象
    NSFileManager *fileManager = [NSFileManager defaultManager];
    
    //沙盒documents文件夹路径
    NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];
    
    //沙盒caches文件夹路径
    NSString *cachesPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];
    
    //1.创建文件夹
    NSString *path = [documentsPath stringByAppendingPathComponent:@"DownLoad/image"];
    
    /*
             方法的调用者:文件管理者
     参数1:想要创建文件夹的路径
     参数2:YES(该路径下创建不存在的文件夹) NO(忽略不存在文件夹,不创建)
     参数3:对所创建的文件夹的相关设置
     参数4:错误信息
     */

    [fileManager createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
    
    NSLog(@"%@",path);
    
    
    //2.判断是否存在某个文件,如果存在,删掉,不存在则创建
    
    NSString *filePath = [cachesPath stringByAppendingPathComponent:@"xiaopingguo.mp3"];
    
    //判断该路径下是否存在对应的文件
    if ([fileManager fileExistsAtPath:filePath]) {
        
        //存在删除
        [fileManager removeItemAtPath:filePath error:nil];
        NSLog(@"文档存在,删除");
    }
    
    else
    {
        //不存在 创建
        [fileManager createFileAtPath:filePath contents:nil attributes:nil];
        
        NSLog(@"文件不存在,创建");
        
    }
    
    NSLog(@"%@",filePath);
    
    

    //3.赋值
    
    [fileManager copyItemAtPath:filePath toPath:[documentsPath stringByAppendingPathComponent:@"xiaopingguo.mp3"] error:nil];
    NSLog(@"%@",documentsPath);
    
    
    //4.移动
    /*
     参数1:文件的源路径
     参数2:目的路径,需要拼接上文件名字
     参数3:错误信息
     */
    
    [fileManager moveItemAtPath:filePath toPath:[path stringByAppendingPathComponent:@"dabaojian.mp4"] error:nil];
    
    
    //5.获取文件的子文件
    NSArray *fileArray = [fileManager contentsOfDirectoryAtPath:documentsPath error:nil];
    
    NSLog(@"%@",fileArray);

    
}

常用路径工具函数
NSString * NSUserName(); 返回当前用户的登录名 
NSString * NSFullUserName(); 返回当前用户的完整用户名 
NSString * NSHomeDirectory(); 返回当前用户主目录的路径 
NSString * NSHomeDirectoryForUser(); 返回用户user的主目录 
NSString * NSTemporaryDirectory(); 返回可用于创建临时文件的路径目录 
 
常用路径工具方法
-(NSString *) pathWithComponents:components    根据components(NSArray对象)中元素构造有效路径 
-(NSArray *)pathComponents                                          析构路径,获取路径的各个部分 
-(NSString *)lastPathComponent                                       提取路径的最后一个组成部分 
-(NSString *)pathExtension                                           路径扩展名 
-(NSString *)stringByAppendingPathComponent:path                    将path添加到现有路径末尾 
-(NSString *)stringByAppendingPathExtension:ext           将拓展名添加的路径最后一个组成部分 
-(NSString *)stringByDeletingPathComponent                           删除路径的最后一个部分 
-(NSString *)stringByDeletingPathExtension                           删除路径的最后一个部分 的扩展名 
-(NSString *)stringByExpandingTildeInPath          将路径中的代字符扩展成用户主目录(~)或指定用户主目录(~user) 
-(NSString *)stringByResolvingSymlinksInPath                         尝试解析路径中的符号链接 
-(NSString *)stringByStandardizingPath            通过尝试解析~、..、.、和符号链接来标准化路径 
使用路径NSPathUtilities.h 
tempdir = NSTemporaryDirectory(); 临时文件的目录名 
path = [fm currentDirectoryPath];
[path lastPathComponent]; 从路径中提取最后一个文件名 
fullpath = [path stringByAppendingPathComponent:fname];将文件名附加到路劲的末尾 
extenson = [fullpath pathExtension]; 路径名的文件扩展名 
homedir = NSHomeDirectory();用户的主目录 
component = [homedir pathComponents];  路径的每个部分 
 
NSProcessInfo类:允许你设置或检索正在运行的应用程序的各种类型信息
(NSProcessInfo *)processInfo                                  返回当前进程的信息
-(NSArray*)arguments                                           以NSString对象数字的形式返回当前进程的参数
-(NSDictionary *)environment                                   返回变量/值对词典。描述当前的环境变量
-(int)processIdentity                                          返回进程标识
-(NSString *)processName                                       返回进程名称
-(NSString *)globallyUniqueString   每次调用该方法都会返回不同的单值字符串,可以用这个字符串生成单值临时文件名   
-(NSString *)hostname                                          返回主机系统的名称 
-(unsigned int)operatingSystem                                 返回表示操作系统的数字 
-(NSString *)operatingSystemName                                     返回操作系统名称 
-(NSString *)operatingSystemVersionString                                     返回操作系统当前版本
-(void)setProcessName:(NSString *)name                                将当前进程名称设置为name 

NSFileManager简单操作

标签:

原文地址:http://blog.csdn.net/y_csdnblog_xx/article/details/51361410

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!