我使用了一箇舊的示例將數據保存到plist.plist來的數據工作正常,但是當我試圖將數據保存到plist中時,它不會更改或編輯.even我不是我的代碼保存數據是 -無法將數據保存到plist
-(void)saveData
{
// get paths from root direcory
NSArray *paths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES);
// get documents path
NSString *documentsPath = [paths objectAtIndex:0];
// get the path to our Data/plist file
NSString *plistPath = [documentsPath stringByAppendingPathComponent:@"Data.plist"];
// set the variables to the values in the text fields
personName = self.nameEntered.text;
phoneNumbers = [[NSMutableArray alloc] initWithCapacity:3];
[phoneNumbers addObject:self.homePhone.text];
[phoneNumbers addObject:self.workPhone.text];
[phoneNumbers addObject:self.cellPhone.text];
// create dictionary with values in UITextFields
NSDictionary *plistDict = [NSDictionary dictionaryWithObjects: [NSArray arrayWithObjects: personName, phoneNumbers, nil] forKeys:[NSArray arrayWithObjects: @"Name", @"Phones", nil]];
NSString *error = nil;
// create NSData from dictionary
NSData *plistData = [NSPropertyListSerialization dataFromPropertyList:plistDict format:NSPropertyListXMLFormat_v1_0 errorDescription:&error];
// check is plistData exists
if(plistData)
{
// write plistData to our Data.plist file
[plistData writeToFile:plistPath atomically:YES];
}
else
{
NSLog(@"Error in saveData: %@", error);
}
}
它不工作檢查創建
NSData
。 – chaaruu 2014-12-06 08:00:43你需要更具體。你怎麼知道它不工作?你在模擬或設備上運行這個嗎?我在代碼中添加了一些NSLog。添加並告訴我輸出是什麼。順便說一下,你的聲明「但是當我試圖將數據保存到plist中時不會改變或編輯」是非常難以理解的。 – 2014-12-06 08:04:37
我也在模擬器和設備上測試過它..當我點擊保存按鈕時,我檢查了plist文件。plist文件沒有發生變化。 – chaaruu 2014-12-06 08:14:46