我的应用程序中有一个功能,用户可以通过单击按钮重置应用程序上的所有内容。此时,我没有尝试删除所有 Core Data 关系(Cascade Delete)和其他复杂情况,而是决定使用这段代码实际删除整个 UIManagedDocument
-(void)cleanUpDocument
{
[[NSFileManager defaultManager] removeItemAtPath:[self.document.fileURL path] error:nil];
}
这应该删除我假设的文档?但它有时会引发错误。奇怪的是,当我下次尝试重新创建文档时,我收到一条错误消息,提示“无法创建文件,文件已存在”。我用来创建文档的代码是这样的:-
if (![[NSFileManager defaultManager] fileExistsAtPath:[self.document.fileURL path]]) {
[self.document saveToURL:self.document.fileURL
forSaveOperation:UIDocumentSaveForCreating
completionHandler:nil]
}
我的问题是:- 删除/删除整个 UIManagedDocument 并在下次成功登录时重新开始的最佳/正确方法是什么?
提前致谢。