如何使用AFNetworking下载文件并存储在文件夹中

时间:2013-05-06 11:12:07

标签: ios objective-c afnetworking

我想创建一个从互联网下载任何文件并存储在文件夹中的应用程序。 我在谷歌和这个网站搜索,我明白使用AFNetworking更好。 在此框架中,我可以显示progessView以显示下载状态。

我是AFNetworking的新手,我希望您指导我并告诉我如何使用AFNetworking创建一个下载文件并显示progessView状态下载的应用程序代码。

2 个答案:

答案 0 :(得分:11)

使用UIProgressview

此处代码进度是使用的UIProgressview

filepath:保存文件的路径[文档目录]

导入

#import <AFNetworking/AFNetworking.h>

并下载

progress.progress = 0.0;

currentURL=@"http://www.selab.isti.cnr.it/ws-mate/example.pdf";


NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:currentURL]];
AFURLConnectionOperation *operation =   [[AFHTTPRequestOperation alloc] initWithRequest:request];

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *filePath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"MY_FILENAME_WITH_EXTENTION.pdf"];
operation.outputStream = [NSOutputStream outputStreamToFileAtPath:filePath append:NO];

[operation setDownloadProgressBlock:^(NSInteger bytesRead, NSInteger totalBytesRead, NSInteger totalBytesExpectedToRead) {
    progress.progress = (float)totalBytesRead / totalBytesExpectedToRead;

}];

[operation setCompletionBlock:^{
    NSLog(@"downloadComplete!");

}];
[operation start];

答案 1 :(得分:0)

尝试使用进度条进行AFNetworking图像下载。

https://www.cocoacontrols.com/controls/nprimageview

此项目中缺少两个文件夹,您可以从heare下载

https://github.com/nicnocquee/NPRImageView/tree/master/Externals