备份数据库并保存到特定文件夹 android
Backup Database and save to specific folder android
我有一个数据库,我想备份和恢复它。我使用此代码备份我的数据库:
// Method To Backup Database//
public void OnClick_Backup(View v) {
// Vibrates For 50 Mill//
vibe.vibrate(50);
try {
File sd = Environment.getExternalStorageDirectory();
File data = Environment.getDataDirectory();
if (sd.canWrite()) {
String currentDBPath = "//data//jordanzimmittidevelopers.com.communityservicelogger//databases//community_service_Database";
String backupDBPath = "Community Service Database";
File currentDB = new File(data, currentDBPath);
File backupDB = new File(sd, backupDBPath);
if (currentDB.exists()) {
FileChannel src = new FileInputStream(currentDB).getChannel();
FileChannel dst = new FileOutputStream(backupDB).getChannel();
dst.transferFrom(src, 0, src.size());
src.close();
dst.close();
Toast.makeText(getApplicationContext(), "Backup is successful to SD card", Toast.LENGTH_SHORT).show();
}
}
} catch (Exception ignored) {
}
}
它很好地备份了数据库,但将其保存到内部的根目录
SD卡。我怎样才能将数据库保存到内部 SD 卡上 aoo 创建的新文件夹中。谢谢
使用下面的代码,
File sd = new File(Environment.getExternalStorageDirectory()+"/newFolder");
if(!sd.exists()){
sd.mkdirs()
}
代码是创建新文件夹(如果不存在)。然后复制数据库后。
我有一个数据库,我想备份和恢复它。我使用此代码备份我的数据库:
// Method To Backup Database//
public void OnClick_Backup(View v) {
// Vibrates For 50 Mill//
vibe.vibrate(50);
try {
File sd = Environment.getExternalStorageDirectory();
File data = Environment.getDataDirectory();
if (sd.canWrite()) {
String currentDBPath = "//data//jordanzimmittidevelopers.com.communityservicelogger//databases//community_service_Database";
String backupDBPath = "Community Service Database";
File currentDB = new File(data, currentDBPath);
File backupDB = new File(sd, backupDBPath);
if (currentDB.exists()) {
FileChannel src = new FileInputStream(currentDB).getChannel();
FileChannel dst = new FileOutputStream(backupDB).getChannel();
dst.transferFrom(src, 0, src.size());
src.close();
dst.close();
Toast.makeText(getApplicationContext(), "Backup is successful to SD card", Toast.LENGTH_SHORT).show();
}
}
} catch (Exception ignored) {
}
}
它很好地备份了数据库,但将其保存到内部的根目录 SD卡。我怎样才能将数据库保存到内部 SD 卡上 aoo 创建的新文件夹中。谢谢
使用下面的代码,
File sd = new File(Environment.getExternalStorageDirectory()+"/newFolder");
if(!sd.exists()){
sd.mkdirs()
}
代码是创建新文件夹(如果不存在)。然后复制数据库后。