在SDImageCache文件补充一个方法,删除给到的URL组意外的缓存.
在一个项目中,有很多缓存图片,有些特定的图片不想清楚,然而我们不可能找到像删除的图片进行删除.所以反过来写了这个方法
-(void)removeImageCacheInAdditionToTheFavoritesWithURLs:(NSArray*)URLs{
if(URLs.count==0) {
[selfclearDisk];
return;
}
NSArray*files = [[NSFileManagerdefaultManager]subpathsOfDirectoryAtPath:self.diskCachePatherror:nil];
NSMutableArray*mutFiles = [NSMutableArrayarray];
NSMutableArray*deleteFiles = [NSMutableArrayarray];
for(NSString*fileStrinfiles) {
[mutFilesaddObject:[NSStringstringWithFormat:@"%@/%@",self.diskCachePath,fileStr]];
[deleteFilesaddObject:[NSStringstringWithFormat:@"%@/%@",self.diskCachePath,fileStr]];
}
for(NSString*urlStrinURLs) {
NSString*fileName = [selfdefaultCachePathForKey:urlStr];
if([mutFilescontainsObject:fileName]) {
[deleteFilesremoveObject:fileName];
}
}
for(NSString*deleteFileNameindeleteFiles) {
[_fileManagerremoveItemAtPath:deleteFileNameerror:nil];
}
}
网友评论