¿Es posible descargar un archivo (es decir, un archivo de base de datos sqlite) desde Internet a la aplicación de iPhone programáticamente para usarlo posteriormente en la aplicación?Descargar un archivo de la url y guardarlo en recursos en el iPhone
Estoy tratando de usar NSURLConnection
, pero no puedo guardar el archivo.
Aquí está el código de ejemplo estoy tratando:
- (void)viewDidLoad
{
[super viewDidLoad];
NSString *file = [NSString stringWithFormat:@"http://en.wikipedia.org/wiki/Text_file"];
NSURL *fileURL = [NSURL URLWithString:file];
NSURLRequest *req = [NSURLRequest requestWithURL:fileURL];
NSURLConnection *conn = [NSURLConnection connectionWithRequest:req delegate:self];
}
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
{
[self.fileData setLength:0];
self.totalFileSize = [NSNumber numberWithLongLong:[response expectedContentLength]];
}
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
[self.fileData appendData:data];
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
NSArray *dirArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSLog(@"%@", [dirArray objectAtIndex:0]);
NSString *path = [NSString stringWithFormat:@"%@/blah.text", [dirArray objectAtIndex:0]];
if ([self.fileData writeToFile:path options:NSAtomicWrite error:nil] == NO) {
NSLog(@"writeToFile error");
}
else {
NSLog(@"Written!");
}
}
¿Qué falla exactamente aquí? – Vladimir
if ([self.fileData writeToFile: opciones de ruta de acceso: NSAtomicWrite error: nil] == NO) { NSLog (@ "writeToFile error"); } Aparece "writeToFile error" – msk