2012-06-30 14 views
5

Estoy desarrollando una aplicación de iPhone que descarga un archivo UTF8Encoded de un servidor, lo almacena en la carpeta Caché de la aplicación y simplemente copia su contenido a NSString* var . Funciona en el dispositivo, pero no en el simulador, el código aquí:leyendo Local File en el simulador de iPhone se bloquea, pero no en el dispositivo real

NSLog(@"File loaded into path: %@\n", localPath); 
NSError* error; 
NSString* tmpString = [NSString stringWithContentsOfFile:localPath encoding:NSUTF8StringEncoding error:&error]; 
NSLog(@"Error: %@", error); 
//Prints the length in the console to check if the file has been correctly copied in the string 
NSLog(@"tmpString length:%u", [tmpString length]); 

en el simulador esta porción de código imprime:

File loaded into path: /Users/username/Library/Application Support/iPhone Simulator/5.1/Applications/4FCF8FC6-4F1B-4FE5-92F6-A99EC8888E47/Library/Caches/utf8encodedFile.txt 

Pero se bloquea cuando se llama al método "stringWithContentsOfFile:", mostrando no hay errores

En el dispositivo real, todo funciona bien, imprime:

File loaded into path: /var/mobile/Applications/1EE8AEEB-D036-4ADE-AE12-836BA1F16BCB/Library/Caches/utf8encodedFile.txt 
2012-06-30 19:19:24.743 appName[685:707] 
Error: (null) 
2012-06-30 19:19:24.745 appName[685:707] tmpString length:1423 
+0

está usted de que existe el archivo? –

+0

Claro, lo he comprobado manualmente yendo al directorio caché en el terminal y programáticamente con el método NsFileManager para verificar si existe. Borrar el caché y cargar el archivo de nuevo no ayudó. En el dispositivo funciona sin problemas, pero no me gusta probar mi aplicación con mi dispositivo personal :( – user1493309

Respuesta

0

¿Ha intentado cargar el contenido del archivo en un NSData y luego crear un NSString con él?

NSData dataWithContentsOfFile: 

y NSString

- (id)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding; 
Cuestiones relacionadas