2

既存の plist を情報で更新するには? 文字列を含む単純な辞書があります。これが私の保存方法です:

#define DOCUMENTS [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]

- (IBAction)saveData:(id)sender {
    NSMutableDictionary *data = [NSMutableDictionarydictionaryWithObjects:@[self.textFieldOne.text, self.textFieldTwo.text, self.textFieldThree.text] forKeys:@[@"Key1", @"Key2", @"Key3"]];
    NSError *error = nil;
    NSData *dataToPlist = [NSPropertyListSerialization dataWithPropertyList:data format:NSPropertyListXMLFormat_v1_0 options:0 error:&error];
    NSString *path = [DOCUMENTS stringByAppendingPathComponent:@"userData.plist"];
    [dataToPlist writeToFile:path atomically:YES];
}

したがって、クラス 1 からこのメソッドを呼び出しても問題ありませんが、この plist をクラス 2 の他の情報で更新したい場合は、古い情報が新しい情報で上書きされます。既存の plist を他のクラスからの新しい情報で更新するにはどうすればよいですか?

4

2 に答える 2

1

Basically the existing one you have to read into dictionary using dictionarywithcontentsfile method and then on the basis of your requirement use setobjecwt method into dictionary and then write to plist. So that old value will be retain there and you can updates new as well.

于 2013-11-06T02:48:47.357 に答える