OGeek|极客世界-中国程序员成长平台

标题: ios - 将文件添加到我的 Plist - 我想我快到了 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 19:52
标题: ios - 将文件添加到我的 Plist - 我想我快到了

在我的 iOS 应用程序中,我制作了一个应该将数据提交到 plist 的表单。我已经按照此链接中的示例进行了其他操作 -

How to write a data in plist?

现在我认为我所做的一切都是正确的,除了我遇到了一个错误并且它与 ARC 相关 - Xcode 说 - 所以我不确定我使用的示例是否已经过时,或者我是否忘记了一些东西。

澄清一下-我有带有适当-(IBAction) 的保存按钮,它没有给出任何错误,所以我认为我在那里没问题。我认为需要调整的一点是将原始 Data.plist 复制到我认为我想用这个来实现的文件夹中。

我已经粘贴了下面发生错误的代码。任何帮助都很棒,如果我可以通过发布更多代码来提供帮助,请告诉我:-)

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.


NSString *destPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
destPath = [destPath stringByAppendingPathComponent"Data.plist"];

// If the file doesn't exist in the Documents Folder, copy it.
NSFileManager *fileManager = [NSFileManager defaultManager];

if (![fileManager fileExistsAtPath:destPath]) {
    NSString *sourcePath = [[NSBundle mainBundle] pathForResource"Data" ofType"plist"];
    [fileManager copyItemAtPath:sourcePath toPath:destPath];
}

// Load the Property List.
savedReadingsDictionary = [[NSMutableDictionary alloc] initWithContentsOfFile:destPath];
}

杰夫干杯

我只是注意到我没有澄清是什么给了我错误:

就是这条线

[fileManager copyItemAtPath:sourcePath toPath:destPath];

错误是:

ARC Issue - No visible @interface for 'NSFileManager' declares the selector 'copyItemAtPath:toPath:'



Best Answer-推荐答案


您使用了一种不存在的方法。您只需将其更改为

[fileManager copyItemAtPath:sourcePath toPath:destPath error:nil];

除了将 nil 作为错误传递,您还可以传递您的自定义 NSError 对象。引用 NSFileManager class reference查看所有允许的方法

关于ios - 将文件添加到我的 Plist - 我想我快到了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9868922/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4