【问题标题】:write array of data to property list?将数据数组写入属性列表?
【发布时间】:2011-04-21 00:44:13
【问题描述】:

您好,提前感谢您的任何回复。

我在资源文件夹中创建了一个属性列表“myArray.plist”。在我的代码中,我用数字填充了一个数组。我将如何使用该数组填充属性列表?另外,我如何将该数组数据存储到应用程序文档文件夹中,以便在我的应用程序运行时可以访问它。 任何帮助将不胜感激!

这是我尝试做的:

NSMutableArray *testArray = [[NSMutableArray alloc]initWithObjects:@"OMG",@"YEAH",nil];

NSString *arrayPath = [[NSBundle mainBundle] pathForResource:@"myArray" ofType:@"plist"];
[testArray writeToFile:arrayPath atomically:NO];

请告诉我我做错了什么。

【问题讨论】:

  • 您是在 iOS 设备还是 Mac OS X 上保存 .plist?

标签: objective-c xcode property-list


【解决方案1】:

pathForResource:ofType: 方法查找与您的应用捆绑的资源,如果找不到则返回 nil。

一般来说,写入您的应用程序资源路径不是标准行为,原因有很多 - 即文件所有权和权限。实际上,您应该尝试将 ~/Library/Application Support/ 用于与您的应用程序相关的用户数据。

此外,NSURL 是自 10.6+ 起引用文件路径的首选方式,因为它易于操作且支持别名。在这种情况下使用 NSURL 是一个好习惯。

无论如何,尝试做这样的事情:

[testArray writeToURL:[NSURL fileURLWithPath:[@"~/Desktop/myArray.plist" stringByExpandingTildeInPath]] atomically:NO];

【讨论】:

    猜你喜欢
    • 2012-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多