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

来源:互联网 发布:sgs报告数据解读 编辑:程序博客网 时间:2024/05/01 05:54

由于允许在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/"


0 0
原创粉丝点击