2012-06-30 18 views
5

Sto sviluppando un'app per iPhone che scarica un file UTF8Encoded da un server, lo memorizza nella cartella Cache dell'App e semplicemente lo copia in un NSString* var . Funziona su dispositivo, ma non sul simulatore, qui il codice:lettura del file locale sul simulatore di iPhone si blocca, ma non sul dispositivo reale

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]); 

sul simulatore questa porzione di stampe di codice:

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

Ma si blocca quando si chiama il metodo "stringWithContentsOfFile:", che visualizza nessun errore

Sul dispositivo vero e tutto funziona bene, esso stampa:

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

sei sicuro il file esiste? –

+0

Certo, l'ho verificato sia manualmente andando alla cartella Cache nel terminale che a livello di codice con il metodo NsFileManager per verificare se esiste. Cancellare la cache e caricare nuovamente il file non ha aiutato. Sul dispositivo funziona in modo impeccabile, ma non mi piace testare la mia app con il mio dispositivo personale :( – user1493309

risposta

0

Hai provato a caricare il contenuto del file in un NSData e quindi creare un NSString con esso?

NSData dataWithContentsOfFile: 

e NSString

- (id)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding; 
Problemi correlati