我試圖讓plist存儲多組數據,但每次保存時(使用ActionSheet中的按鈕),它都會覆蓋之前的設置。我想添加多個「朋友」和他們的數據。我不太喜歡使用核心數據,所以我想知道如何用Plist做到這一點。向Plist寫入一組新數據而不是覆蓋它
這裏是保存按鈕的代碼:
NSMutableDictionary *friend = [[NSMutableDictionary alloc] init];
NSMutableDictionary *array = [[NSMutableDictionary alloc]init];
[array setObject:friendName.text forKey:@"Name"];
[array setObject:friendPhone.text forKey:@"Phone Number"];
[array setObject:friendEmail.text forKey:@"Email Address"];
[array setObject:friendChatSN.text forKey:@"Chat Screen Name"];
[friend setValue:array forKey: @"Friend Data"];
NSArray *paths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0];
NSString *plistPath = [documentsPath stringByAppendingPathComponent:@"FriendList.plist"];
[friend writeToFile:plistPath atomically: TRUE];
而不是覆蓋它,我怎麼能修改代碼,每次我保存添加一組新朋友的數據?
我錯過的東西或[朋友的setValue:陣列forKey:@ 「朋友數據」];你的問題是?你會覆蓋你的舊數據,每次在字典中將數組值設置爲相同的密鑰... – 2012-01-11 09:23:22
我知道我正在覆蓋它。我對iOS相當陌生,我不知道如何編寫代碼來保存一組新的值。如果你能更清楚地修改我的代碼,我真的很感激它。 – 2012-01-11 09:31:42