obj-c附加plist

时间:2012-10-08 19:02:52

标签: objective-c

所以我对所有这些iOS的东西都是新手,而且我有一些关于将项目附加到plist的问题。我的plist看起来如下;

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
  <dict>
    <key>team</key>
    <string>red</string>
    <key>name</key>
    <string>Guy1</string>
  </dict>
  <dict>
    <key>team</key>
    <string>blue</string>
    <key>name</key>
    <string>Guy2</string>
  </dict>
</array>
</plist>

我已经有一个正确的tableview设置来读取这些信息,所以我真的不打算改变plist。

我目前设置的内容与显示的第一个答案相同here。我可以让我的代码编译,但没有任何修改(当我尝试追加)。我需要改变什么以使其专门附加到上面的plist。

1 个答案:

答案 0 :(得分:1)

虽然可以操作存储在属性列表中的XML,但在Objective-C中加载属性列表,操纵存储在其中的对象,然后将对象保存回来几乎总是更容易到房产清单。通过这样做,您可以避免创建无效文件的任何可能性,并且代码也更加简单。

NSMutableArray *array = [NSMutableArray arrayWithContentsOfFile:pathToMyPropertyList];
NSDictionary *newTeam = [NSDictionary dictionaryWithObjectsAndKeys:@"green", @"team", @"Guy4", @"name", nil];
[array addObject:newTeam]
[array writeToFile:somePath atomically:YES];