0

NSArray をファイルに書き込もうとしています。これは私が使用したコードです

 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"GraphData.txt"];

[myArray writeToFile:filePath アトミック:YES];

ファイルを保存するパスが見つからないため、このコードを使用してこのファイルを取得しようとすると NUll が返されます

 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"GraphData.txt"];    
NSArray *myArray = [NSArray arrayWithContentsOfFile:filePath];
NSLog(@"FROM FILE::: %@ FROM FILE::", myArray);

書き込む前にまずファイルを作成する必要があると考えましたが、どこにあるのかわかりません。たとえば、手動のパスを指定できます。私のデスクトップまたはドキュメントフォルダーに移動し、配列をファイルに書き込みますが、実際のアプリに展開しようとすると機能しないと思います. だから、助けてください

4

1 に答える 1

0

まず、次の方法で配列が正常に書き出されたかどうかを確認する必要があります。

BOOL success = [myArray writeToFile:filePath atomically:YES];
if(success == NO)
{
   NSLog( @"did not write file to %@", filePath );
}

配列の内容がすべてプロパティ リスト オブジェクト (たとえばNSString、" "、" NSData"、" NSArray" または " NSDictionary" オブジェクト) である場合にのみ、配列が書き出されることに注意してくださいNOsuccess「ブール。

于 2013-08-19T03:32:32.130 に答える