是否writeToFile:原子地将数据添加到现有的.plist?是否可以修改.plist中的值?应该重新编译应用以实现更改吗?objective-c添加到/编辑.plist文件
我在我的应用程序中有一个自定义的.plist列表。结构如下:
<array>
<dict>
<key>Title</key>
<string>MyTitle</string>
<key>Measurement</key>
<dict>
<key>prop1</key>
<real>28.86392</real>
<key>prop2</key>
<real>75.12451</real>
</dict>
<key>Distance</key>
<dict>
<key>prop3</key>
<real>37.49229</real>
<key>prop4</key>
<real>58.64502</real>
</dict>
</dict>
</array>
数组标签包含多个具有相同结构的项目。我需要将项目添加到现有的.plist。那可能吗?如果可以的话,我可以编写一个UIView来做到这一点。
*编辑 - 好的,我只是试图写文件希望希望它会覆盖如果不添加到它。奇怪的是,下面的代码在读写时选择不同的路径。
NSString *rootPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
.plist文件在我的项目中。我可以从中读取。当我写入它时,它会创建.plist文件并将其保存在我的/users/.../library/中!这对任何人都有意义吗?
绝对正确。你不应该写入应用程序包中的任何文件。没有管理员权限的用户通常没有权限执行此操作。如果您需要存储持久数据,请将其存储在'〜/ Library/Application Support'中或使用'NSUserDefaults'。 – 2010-03-12 04:12:17
谢谢。说得通。 – Dave 2010-03-12 06:31:23