NSFileManager 基本操作



转载地址:  http://blog.csdn.net/xyz_lmn/article/details/8968213



#pragma mark 获取应用沙盒根路径
- (void)dirHome{
    
    NSString *path = NSHomeDirectory();
    NSLog(@"app_home:---%@",path);
    
}


#pragma mark 获取Document路径,苹果建议将程序创建产生的文件以及应用浏览产生的文件数据保存在该目录下,iTunes备份和恢复的时候会包括此目录。
- (NSString *)dirDoc{
    NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *path = [array lastObject];
    NSLog(@"document --->%@",path);
    return path;
}


#pragma mark 获取Library  存储程序的默认设置或其它状态信息;
- (NSString *)dirLib{
    
    NSArray *array = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES)
    ;
    NSString *path = [array lastObject];
    NSLog(@"library----->%@",path);
    return path;
}

#pragma mark 获取cach目录  存放缓存文件,保存应用的持久化数据,用于应用升级或者应用关闭后的数据保存,不会被itunes同步,所以为了减少同步的时间,可以考虑将一些比较大的文件而又不需要备份的文件放到这个目录下。
- (NSString *)dirCach{
    NSArray *array = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
    NSString *path = [array lastObject];
    NSLog(@"cach-------->%@",path);
    return path;

}

#pragma mark  tmp   提供一个即时创建临时文件的地方,但不需要持久化,在应用关闭后,该目录下的数据将删除,也可能系统在程序不运行的时候清除。
- (NSString *)dirTmp{
    NSString *tmp = NSTemporaryDirectory();
    NSLog(@"tmp----->%@",tmp);
    return tmp;
}

#pragma mark 创建文件夹
- (BOOL)createDirectory{
    NSString *path = [self dirDoc];
    NSFileManager *fileManager = [NSFileManager defaultManager];
    path = [path stringByAppendingPathComponent:@"maizi_data"];
    bool flag = [fileManager createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
    if (flag) {
        NSLog(@"创建成功");
    }else{
        NSLog(@"创建失败");
    }
    return flag;
}

#pragma mark 创建文件
- (BOOL)createFile{
    NSString *path = [self dirDoc];
    NSFileManager *fileManager = [NSFileManager defaultManager];
    path = [path stringByAppendingPathComponent:@"NBA"];
    bool flag = [fileManager createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
    if (flag) {
        path = [path stringByAppendingPathComponent:@"player.txt"];
        flag = [fileManager createFileAtPath:path contents:nil attributes:nil];
        if (flag) {
            NSLog(@"文件创建成功");
        }else{
            NSLog(@"文件创建失败");
        }
    }
    return flag;
}

#pragma mark writeFile
- (BOOL)writeFile{
    NSString *path = [self dirDoc];
    path = [path stringByAppendingPathComponent:@"NBA/player.txt"];
    NSFileManager *fileManager = [NSFileManager defaultManager];
    BOOL flag = [fileManager fileExistsAtPath:path];
    if (flag) {
        NSLog(@"文件已经存在");
        NSString *content = @"季前赛又快来了";
        NSError *error = nil;
        flag = [content writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:&error];
        if (flag) {
            NSLog(@"写入成功");
        }else{
            NSLog(@"写入失败----%@",error);
        }
    }else{
        NSLog(@"文件不存在");
    }
    return flag;
}

#pragma mark  读数据
- (BOOL)readFile{
    NSString *path = [self dirDoc];
    path = [path stringByAppendingPathComponent:@"NBA/player.txt"];
    NSString *content = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
    if (content) {
        NSLog(@"文件内容---->%@",content);
        return true;
    }else{
        return false;
    }

}

#pragma mark 文件属性
- (void)fileAttr{
    NSString *path = [self dirDoc];
    path = [path stringByAppendingPathComponent:@"NBA/player.txt"];
    NSFileManager *fileManager = [NSFileManager defaultManager];
    NSDictionary *dic = [fileManager attributesOfItemAtPath:path error:nil];
    NSArray *array = [dic allKeys];
    id val;
    for (int i = 0; i<array.count; i++) {
        val = [dic objectForKey:array[i]];
        NSLog(@"key---%@----val---%@",array[i],val);
    }

}

#pragma mark  删除
- (BOOL)removeFile{
    NSString *path = [self dirDoc];
    path = [path stringByAppendingPathComponent:@"NBA/player.txt"];
    NSFileManager *fileManager = [NSFileManager defaultManager];
    bool flag = [fileManager removeItemAtPath:path error:nil];
    if (flag) {
        NSLog(@"删除成功");
    }else{
        NSLog(@"删除失败");
    }
    return flag;
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值