我正在一个Android
应用程序上工作,在将新数据复制到Realm之前,我将删除Realm
。在使用realm.copyToRealm()
时如果出了点问题,我有什么办法可以在删除数据之前备份数据并还原回去?
最佳答案
Realm.writeCopyTo
在这种情况下可能会有所帮助。您可以在这里找到doc。
//Backup
Realm orgRealm = Realm.getInstance(orgConfig);
orgRealm.writeCopyTo(pathToBackup);
orgRealm.close();
//Restore
Realm.deleteRealm(orgConfig);
Realm backupRealm = Realm.getInstance(backupConfig);
backupRealm.writeCopyTo(pathToRestore);
backupRealm.close();
orgRealm = Realm.getInstance(orgConfig);
但是,对于您而言,将Realm文件移动到要备份的位置,然后在要还原时将其移回会更简单,更快。要获取Realm文件路径,请尝试:
realm.getPath();