2013-01-04 37 views
6

Tôi đang sử dụng AFNetworking và có thể tải xuống thành công tệp.AFNetworking - lưu tệp đã tải xuống

Khi kết thúc quá trình tải xuống, nó không xuất hiện trong thư mục mà tôi đã đặt.

tôi đã làm một số tìm kiếm và đã xem qua một số câu hỏi ở đây trên SO nơi nó được đề nghị tôi sử dụng:

[_operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) { 

Nhưng mà đi lên với một lỗi và nó là như xa như tôi có thể nói không được đề cập trong tài liệu của họ.

lỗi là:

/Users/Jeff/Documents/Dropbox-01/Dropbox/Dự án Xcode/Hãy thử Outs - JEFF/testDownload/testDownload/JWKDownloadViewController.m: 177: 10: Không nhìn thấy @ giao diện cho 'AFURLConnectionOperation' tuyên bố chọn 'setCompletionBlockWithSuccess: thất bại:'

có một dòng cập nhật tôi cần phải sử dụng ???

+0

Hãy chắc chắn rằng bạn lưu các tập tin khi nó được tải về hoàn toàn – Dhara

+0

Đó là những gì dòng này là dành cho đúng? _operation.outputStream = [NSOutputStream outputStreamToFileAtPath: _streamingURL chắp thêm: NO]; –

+0

@Dhara ở đây tệp được tải xuống byte theo byte. –

Trả lời

4

Có chắc chắn rằng u đã sử dụng đường dẫn chính xác vào NSOutputStream

Thêm này:

[_operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) { 
NSLog(@"Successfully downloaded file"); 
} failure:^(AFHTTPRequestOperation *operation, NSError *error) { 
    NSLog(@"Error: %@", error); 
}]; 
[_operation start]; 
+0

Yup Tôi phải kiểm tra đầu ra - Tôi đã lưu đường dẫn, nhưng sau đó quên thêm tên tệp vào nó :-) –

8
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"..."]]; 
AFHTTPRequestOperation *operation = [[[AFHTTPRequestOperation alloc] initWithRequest:request] autorelease]; 

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

[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) { 
    NSLog(@"Successfully downloaded file to %@", path); 
} failure:^(AFHTTPRequestOperation *operation, NSError *error) { 
    NSLog(@"Error: %@", error); 
}]; 

[operation start]; 
+0

cách thức này trong AFNetworking 3.0 ??????? – do01

+0

cách chuyển tham số trong đó? –

Các vấn đề liên quan