将ManagedObjectContext保存到新的sqlite文件中

时间:2013-06-01 08:59:49

标签: sqlite core-data nsmanagedobjectcontext

我正在尝试从当前正在运行的商店(在" workingDocPath")保存我的SQLite数据库的版本,我可以重新加载或通过电子邮件发送给其他用户。我有一个save方法,它使用TextField" name"中提供的名称成功保存了sqlite文件,但它没有更新最近的更改。我通过向基线数据库添加一个对象来测试它,并使用保存功能,该对象没有出现在新保存的文件中。我用SQLite数据库浏览器打开了保存的文件,新对象不在那里。我已经在方法中加入了MOC保存,所以我不确定出了什么问题:

- (IBAction)save:(id)sender {
    [self.managedObjectContext save:nil];
    NSString *filename = [name.text stringByAppendingString:@".sqlite"];
    NSString *savePath = [workingDirPath stringByAppendingPathComponent:filename];
    if (![[NSFileManager defaultManager] fileExistsAtPath:savePath]) {NSLog(@"Save File being created");


        NSError *error = nil;

        if (![[NSFileManager defaultManager] copyItemAtPath:workingDocPath toPath:savePath error:&error]) {
            NSLog(@"Error: %@", error);
        }

    }
    else {NSLog(@"Save File already exists");}
    [self.delegate theSaveButtonOnTheFileSaveViewControllerWasTapped:self];
}

0 个答案:

没有答案