私のアプリケーション用の小さなデータを格納する方法としてplistを使用しています。今私の問題は、私のアプリケーションがEXC_BAD_ACCESS
エラーを出すことです。 plistを読む私の方法では、それは私にsummary unavailable
を与えました。しかしNSMutableDictionaryは私に2つのキー/ペアを与えました。私のplistはplistを使う方法を学ぶために2つの値しか持っていませんでした。このサマリー利用不可能な, I got the
EXC_BAD_ACCESS`エラーのため、私は気分がありますか?plistの出力値に問題があります
-(void)readFile{
NSError *error;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); //1
NSString *documentsDirectory = [paths objectAtIndex:0]; //2
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"EventAddress.plist"]; //3
NSFileManager *fileManager = [NSFileManager defaultManager];
if (![fileManager fileExistsAtPath: path]) //4
{
NSString *bundle = [[NSBundle mainBundle] pathForResource:@"EventAddress" ofType:@"plist"]; // 5
[fileManager copyItemAtPath:bundle toPath: path error:&error]; //6
}
NSMutableDictionary *savedStock = [[NSMutableDictionary alloc] initWithContentsOfFile: path];
//load from savedStock both addr and event are NSString
addr = [savedStock objectForKey:@"Address"];
event = [savedStock objectForKey:@"Event"];
[savedStock release];
}
ご協力いただければ幸いです。
UPDATE 1
Where the error occurred was at the - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
...
...
// EXC_BAD_ACCESS happened at this line
[[cell textLabel] setText:addr];
}
しかし@Jeffがaddrとイベントを保持するために私に言ったとき、それが解決しました。今度は新しいEXC_BAD_ACCESS
がmain.mファイルから来ています: int retVal = UIApplicationMain(argc, argv, nil, nil);
今何が間違っていた可能性がありますか?
更新2 これはplistの使い方を学んだサイトです。 plist tutorial
どのラインがEXC_BAD_ACCESSを取得していますか? – progrmr
申し訳ありませんが、質問を正しく書いていません。 addrとeventはどちらも 'UITableViewCell'' [[cell textLabel] setText:addr];で表示すると仮定しています;' @ Jeffの返事をして、この質問を更新します。あなたの素早い返信をありがとう! –