在哪里添加文件保存方法?

时间:2011-03-24 00:36:14

标签: iphone objective-c

我正在保存一个可由用户编辑到plist的数组。我的问题是,在代码中我实现代码的位置是什么?就像处理应用程序退出的方法之一一样?

这是代码

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"patientList.plist"];
[myPatients writeToFile:path atomically:YES];

2 个答案:

答案 0 :(得分:2)

我认为这取决于您如何实施数据管理器。如果您有一个单例来处理访问/写入数据,为什么不在更新单例数组时将数据写入文件?通过这种方式,您可以确保在发生意外情况时始终保存数据。

乔丹建议的绝对是一条路线,但我会使用appWillResign vs willTerminate。

答案 1 :(得分:0)

我建议这样的事情:

    - (void)applicationWillTerminate:(UIApplication *)application
    {
        [self saveCode];
    }

    - (void)saveCode
    {
      SArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);  
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *path = [documentsDirectory stringByAppendingPathComponent:@"patientList.plist"];
    [myPatients writeToFile:path atomically:YES];
}