添加&删除plist中的Array Items

时间:2012-06-12 10:50:17

标签: iphone objective-c xcode plist

我在XCODE中的plist文件中添加和删除数组中的项目时遇到问题。

我可以通过以下代码读取数组:

// Path to the plist (in the application bundle) ------>>>>>
NSString *path = [[NSBundle mainBundle] pathForResource:
                  @"Fav" ofType:@"plist"];

// Build the array from the plist  ------>>>

NSDictionary *favs = [[NSMutableDictionary alloc] initWithContentsOfFile: path];
Resepies = [favs objectForKey:@"Root"];

这是我的plist结构

enter image description here

Senario是让用户一次添加和删除数组中的特定项目。

2 个答案:

答案 0 :(得分:3)

试试这段代码 -

NSString *path = [[NSBundle mainBundle] pathForResource: @"Fav" ofType:@"plist"];

// Build the array from the plist  ------>>>

NSDictionary *favs = [[NSMutableDictionary alloc] initWithContentsOfFile: path];

Resepies = [favs objectForKey:@"Root"];

[Resepies addObject:addYourObjectHere];

//then add this array into dictonary ; 

[favs setObject:Resepies forKey:@"Root"];

// now write dictionary to plist

[favs writeToFile:yourPlistName atomically:YES];

答案 1 :(得分:2)

您无法修改应用程序包中的文件,这是您上面的代码尝试执行的操作。

如果文件应该是可修改的,则需要先将其移动到文档文件夹中(例如,首次运行时),然后再读取/写入该文件。有很多问题涉及如何执行此操作,例如:create plist并将plist复制到文档目录