2011-08-03 22 views
1

plistファイルに文字列を書き込むアプリケーションを作成していますが、plistファイルに書き込むたびに問題が発生しています。元の内容を削除せずに既存のものに書き込む方法、または元の内容を保持してから書き直す方法のいずれかを使用してください。Plistファイルに書き込みますが、置き換えません

ファイルを保存するために自分のコードがどのように見えるか

- (NSString *) saveFilePath 
{ 
NSArray *pathArray = 
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 

return [[pathArray objectAtIndex:0] stringByAppendingPathComponent:@"scores.plist"]; 

} 

-(void)alertView:(UIAlertView *)alert_view didDismissWithButtonIndex: 
(NSInteger)button_index{ 
if(button_index == 0){ 
    NSLog(@"1"); 
    score = 0; 

} 
if(button_index == 1){ 
    NSLog(@"2"); 

    NSString *scoreString = [NSString stringWithFormat:@"%i by %@", score, name.text]; 
    NSLog(@"%@", scoreString); 
    NSArray *values = [[NSArray alloc] initWithObjects:scoreString, nil]; 
    [values writeToFile:[self saveFilePath] atomically:YES]; 
    [values release]; 

    score = 0; 

} 
} 

アイデア?ありがとう!

答えて

3

plistを読み込んでNSMutableArrayに書き込むことができます。その後、データを追加して、既存のファイルを上書きしてファイルに書き戻します。

NSMutableDictionaryと同じことです。

+0

NSArrayを基本的に作成し、既存のplistファイルの内容を追加し、新しいものを追加して保存しますか? – Jacob

+0

NSMutableArray * arr = [NSMutableArray arrayWithContentsOfFile:file_path]; – Max

+0

それはうまくいくようでした!おかげで、 – Jacob

関連する問題