读取/写入 plist 的正确方法是啥?

Posted

技术标签:

【中文标题】读取/写入 plist 的正确方法是啥?【英文标题】:What's the proper way to read/write to a plist?读取/写入 plist 的正确方法是什么? 【发布时间】:2010-10-17 11:56:09 【问题描述】:

在我的应用程序中,我将一些用户数据存储在两个 .plist 文件中,这些文件已经包含一些数据,但用户可以更改它。

NSString *Path = [[NSBundle mainBundle] bundlePath];

NSString *DataPath = [Path stringByAppendingPathComponent:@"Settings.plist"];

NSMutableDictionary *tempDict = [[NSMutableDictionary alloc] initWithContentsOfFile:DataPath];

它适用于模拟器,但不适用于设备。

你能帮帮我吗?

谢谢!

【问题讨论】:

【参考方案1】:

您无法写入设备上的捆绑包,因此您需要获取 Documents 或 Library 目录的路径。

- (NSString*)applicationDocumentsDirectory

        NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
        return [paths lastObject];

【讨论】:

谢谢,但是我该怎么做呢? 是的,对于简短的第一个答案,我很抱歉,我在寻找代码时点击了保存。 :)

以上是关于读取/写入 plist 的正确方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

在 plist 中写入字典有效,然后从 plist 返回中读取字典(空)

Objc执行时读取和写入plist文件遇到的问题

在运行应用程序时将数据写入 plist 并将它们读取到 UITable

在进程之间共享活动对象的正确方法是啥?

在 Perl 中打开和读取文件的最佳方法是啥?

在 csv/xlsx 文件中写入图像的正确方法是啥?