将变量添加到writeToFile:atomically:

时间:2012-06-08 02:06:19

标签: iphone ios xcode

我目前正在编写一个简单的IOS应用程序,可将任务保存到表格中。我想扩展应用程序并允许人们与其他人分享“列表”。在将其保存为XML或URL之前,我想使用writeToFile:atomically:使用本地文件进行尝试。这很有效。但是我需要该文件对于使用它的人来说是唯一的,所以我想让文件对列表的标题是唯一的。标题字段是UITextField。任务是一个可变数组这是我的代码:

- (void)saveTask:(id)sender;
{
NSString * original = [titleField text];
NSString * file = [NSString stringWithFormat:@"%@.plist", original];


[tasks writeToFile:@"/tmp/%@.plist",file 
        atomically:YES];
}

我得到一个错误,希望我在自动中间添加一个“:”。如何在writeToFile中使用变量:atomically:?如果这些都没有意义,请告诉我,以便我可以添加一些东西。谢谢。

2 个答案:

答案 0 :(得分:1)

根据你正在做的事情,你最终会得到扩展名为.plist.plist的文件。

此外,您收到错误的原因是,代码应该是这样的

[tasks writeToFile:[NSString stringWithFormat:@"/tmp/%@.plist",file] 
        atomically:YES];

这可能是你想要的

- (void)saveTask:(id)sender;
{
    NSString * original = [titleField text];
    NSString * file = [NSString stringWithFormat:@"%@.plist", original];

    [tasks writeToFile:[NSString stringWithFormat:@"/tmp/%@", file] 
            atomically:YES];
}

答案 1 :(得分:0)

您的变量文件具有plist扩展名。 当您尝试将数组写入文件时,您再次在路径中附加plist。所以,它给你一个错误。这样的文件不存在。