2011-01-10 6 views
0

writeToFileが非オブジェクトで動作しないという説明を見たことがあるが、 このスニペットは、iPad上で動作するものに深刻な差があることを示していますデバイス とそのシミュレータの動作objective-c writeToFile iPad上で動作しない、シミュレータで動作する

NSMutableArray *arrayOne = [NSMutableArray arrayWithObjects:@"Thing One", @"Thing Two", @"Thing Three", nil]; 
[arrayOne writeToFile:@"myLocalMovieMetaData-v11" atomically:YES]; 
NSLog(@"cancelNowButton Test Metadata File Written."); 
NSMutableArray *arrayTwo = [NSMutableArray arrayWithContentsOfFile:@"myLocalMovieMetaData-v11"]; 
NSLog(@"arrayOne: %@",arrayOne); 
NSLog(@"arrayTwo: %@",arrayTwo); //this prints on simulator but not the device. 

答えて

3

アプリケーションは、そのドキュメントディレクトリへの書き込み権限を持っています

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"myLocalMovieMetaData-v11"]; 

次に使用:

[arrayOne writeToFile:path atomically:YES]; 
+0

をこれがまさに問題です。 (あなたは数秒でそれに私を打つ。)OPに、あなたのハードドライブのルートを確認してください。 「myLocalMovieMetaData-v11」ファイルがそこに作成されていることがわかります。 –

関連する問題