我使用afnetworking
下载了图片并保存了名称[response suggestedFilename]
;我无法从路径中获取图像。
以下是下载方法:
- (void)startDownload:(OMImageTableViewCell *)cell {
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration];
NSURL *url = [NSURL URLWithString:[_arrayImages objectAtIndex:cell.download.tag]];
NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:60];
[cell.imagePic setImageWithURLRequest:request placeholderImage:cell.imagePic.image success:nil failure:nil];
NSURLSessionDownloadTask *downloadTask = [manager downloadTaskWithRequest:request progress:^(NSProgress * _Nonnull downloadProgress) {
dispatch_async(dispatch_get_main_queue(), ^{
[cell.progressDownload setProgress:downloadProgress.fractionCompleted];
});
} destination:^NSURL *(NSURL *targetPath, NSURLResponse *response) {
_documentsDirectoryURL = [[NSFileManager defaultManager] URLForDirectory:NSDocumentDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:NO error:nil];
return [_documentsDirectoryURL URLByAppendingPathComponent:[response suggestedFilename]];
} completionHandler:^(NSURLResponse *response, NSURL *filePath, NSError *error) {
NSData *data = [NSData dataWithContentsOfURL:filePath];
dispatch_async(dispatch_get_main_queue(), ^{
cell.imagePic.image = [UIImage imageWithData:data];
});
NSLog(@"File downloaded to: %@", filePath);
}];
[downloadTask resume];
}
答案 0 :(得分:0)
试试这个:
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL isFileExist = [fileManager fileExistsAtPath: filePath];
UIImage *image;
if (isFileExist) {
image = [[UIImage alloc] initWithContentsOfFile:filePath];
}
else {
// do something.
}