iOS把图片缓存到本地的几种方法(总结)

2020-01-21 03:43:23于丽

二、把图片直接保存到沙盒中,然后再把路径存储起来,等到用图片的时候先获取图片的路径,再通过路径拿到图片


 //拿到图片
 UIImage *image2 = [UIImage imageNamed:@"1.png"]; 
 NSString *path_document = NSHomeDirectory();
 //设置一个图片的存储路径
 NSString *imagePath = [path_document stringByAppendingString:@"/Documents/pic.png"];
 //把图片直接保存到指定的路径(同时应该把图片的路径imagePath存起来,下次就可以直接用来取)
 [UIImagePNGRepresentation(image2) writeToFile:imagePath atomically:YES];

下次利用图片的地址直接来拿图片。


UIImage *getimage2 = [UIImage imageWithContentsOfFile:imagePath]; 
NSLog(@"image2 is size %@",NSStringFromCGSize(getimage2.size)); 

同时附上获取沙盒目录的代码

沙盒文件目录获取代码:

//Home目录


NSString *homeDirectory = NSHomeDirectory(); 

//Document目录


NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *path = [paths objectAtIndex:0]; 

//Cache目录


NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES); 
NSString *path = [paths objectAtIndex:0]; 

//Libaray目录


NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES); 
NSString *path = [paths objectAtIndex:0];

以上这篇iOS把图片缓存到本地的几种方法(总结)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持ASPKU。


注:相关教程知识阅读请移步到IOS开发频道。