2012-06-30 13 views
5

UTF8Encodedファイルをサーバーからダウンロードしてアプリケーションのキャッシュフォルダに保存し、内容をNSString* varにコピーするiphoneアプリケーションを開発しています。それはここでは、デバイス上ではなく、シミュレータ上で動作するコード:シミュレータ上iPhoneシミュレータのローカルファイルを読み込むと実際のデバイスでクラッシュする

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

コードプリントのこの部分:

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

しかし、それは表示され、「stringWithContentsOfFile:」メソッドを呼び出すときにクラッシュしますすべてがうまく動作し、実際のデバイス上のエラー

いいえ、それは印刷しません:

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

あなたは、ファイルが存在してよろしいですか? –

+0

確かに、ターミナルのCacheディレクトリに手動で移動し、NsFileManagerメソッドをプログラムで実行して、存在するかどうかを確認しました。キャッシュをクリアしてファイルをもう一度アップロードしても役に立たなかった。デバイス上では完璧に動作しますが、私のパーソナルデバイスで私のアプリをテストするのは嫌いです: – user1493309

答えて

0

ファイルの内容をNSDataにロードして、NSStringを作成しましたか?

NSData dataWithContentsOfFile: 

NSString

- (id)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding; 
関連する問題