データベース ファイルをドキュメント ディレクトリにコピーする必要があるアプリがあります。私はそれを行う方法を知っており、うまく機能しています。これがそのコードです
// Get Required Path
NSFileManager *fileManager = [NSFileManager defaultManager];
NSError *error;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *writableDBPath = [documentsDirectory stringByAppendingPathComponent:DataBaseName];
// Check if DB file already Exist. If YES than return.
success = [fileManager fileExistsAtPath:writableDBPath];
if (success) return success;
// If DB file is not exist try to write file. This will execute first time only.
NSString *defaultDBPath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:DataBaseName];
success = [fileManager copyItemAtPath:defaultDBPath toPath:writableDBPath error:&error];
// Add Skip Backup attribute here.
これは正常に機能しますが、何らかの理由でエラーが発生することがあります。今問題は、この問題をトレースしようとすると発生しません。
理由はわかりませんが、success = [fileManager fileExistsAtPath:writableDBPath];
NOを返しています。新しいファイルを書き込もうとしますが、新しいファイルの書き込みも失敗します。error
私のテストでは再現されていないため、追跡するのは非常に困難です。
これが原因で発生する可能性のあるエラーを教えて、解決策を提供してください。
ありがとう