2013-01-04 19 views
6

Sto utilizzando AFNetworking e posso scaricare correttamente un file.AFNetworking - salvataggio di un file scaricato

Al termine del download, non appare nella directory che ho impostato per essere.

ho fatto qualche ricerca e sono imbattuto in un paio di domande qui sul SO in cui si suggerisce che uso:

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

Ma che si apre con un errore ed è quanto non posso dirvi di cui al la loro documentazione.

l'errore è:

/Utenti/Jeff/Documenti/Dropbox-01/Dropbox/Xcode Progetti/Prova Outs - JEFF/testDownload/testDownload/JWKDownloadViewController.m: 177: 10: No visible @ interfaccia per 'AFURLConnectionOperation' dichiara il selettore 'setCompletionBlockWithSuccess: fallimento:'

c'è una linea aggiornata ho bisogno di usare ???

+0

Assicurarsi di salvare il file quando il suo completamente scaricato – Dhara

+0

Questo è ciò che questa linea è per destra? _operation.outputStream = [NSOutputStream outputStreamToFileAtPath: _streamingURL append: NO]; –

+0

@Dhara qui il file viene scaricato byte per byte. –

risposta

4

Sì assicurarsi che u hanno usato percorso corretto in NSOutputStream

Aggiungere questo:

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

Sì, ho dovuto controllare l'output - stavo salvando il percorso, ma poi ho dimenticato di aggiungere il nome del file ad esso :-) –

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

come è questo in AFNetworking 3.0 ??????? – do01

+0

come passare il parametro in esso? –

Problemi correlati