iOS:Documents目录下文件的操作(缓存图片为例)

本文介绍了如何在iOS应用中利用Documents目录进行文件操作,特别是针对网络图片的缓存过程,包括添加路径、删除文件及将图片写入自定义子目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于允许在Documents目录下比较自由的进行文件操作,因此可以进行诸如网络资源的缓存等功能。

1,添加路径目录

    NSString *path = [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"] stringByAppendingPathComponent:@"MyOwnDirectory"];
    NSFileManager *fileManager = [NSFileManager defaultManager];
    if([fileManager fileExistsAtPath:path]){
        
    }else{
        [fileManager createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
    }

如果该路径不存在则创建该路径

2,删除指定路径的目录或文件

    NSString *temPath = [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"] stringByAppendingPathComponent:@"MyOwnDiretory"];
    NSFileManager *fileManager = [NSFileManager defaultManager];
    if([fileManager fileExistsAtPath:temPath]){
        [fileManager removeItemAtPath:temPath error:nil];
    }


上述可以实现清除缓存目录


3,将图片写到Documents/MyOwnDirectory/下

    NSData *image_data = [NSData dataWithData:UIImageJPEGRepresentation(image, 1)];
    [image_data writeToFile:filePath atomically:YES];
而这个filepath就是指Documents/MyOwnDirectory,可以通过如下方法得到:

    NSArray *paths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory,                                                                          NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *filePath = [documentsDirectory stringByAppendingPathComponent:fileName];

这个filePath只是Documents/"your file name"如果想要得到/Documents/MyOwnDirectory/"your file name",便需要在documentsDirectory后面添加字符串"MyOwnDirectory/"


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值