1

変数をハード ドライブに保存して、アプリの起動時にロードしようとしています。私は次のことを行います:

paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
documentsDirectory = [paths objectAtIndex:0];
votesFile = [documentsDirectory stringByAppendingPathComponent:@"votes.dat"];

それでも、これは少なくとも私が見ることができるファイルを作成していません。私がこれをやろうとすると:

[votes writeToFile:votesFile atomically:YES]; //votes!=nil

その後

votes = [[NSMutableDictionary alloc] initWithContentsOfFile: votesFile];

それは私には何もしません、投票== nil

ここで何が欠けていますか?

4

2 に答える 2

1

writeToFile:atomically: を使用するとさまざまなエラーが発生する可能性があるため、BOOL が返されます。次のようなものが必要です。

if(![votes writeToFile:votesFile atomically:YES]) {
    NSLog(@"An error occurred");
}

そこでエラーが発生する場合は、NSDictionary に問題があります。

于 2013-07-02T23:48:12.613 に答える