java导出sqlite_java-在Android上简单导出和导入SQLite数据库

这是将数据库导出到名为backup文件夹的简单方法,您可以根据需要对其命名,并且是从同一文件夹中导入数据库的简单方法。

public class ExportImportDB extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

//creating a new folder for the database to be backuped to

File direct = new File(Environment.getExternalStorageDirectory() + "/Exam Creator");

if(!direct.exists())

{

if(direct.mkdir())

{

//directory is created;

}

}

exportDB();

importDB();

}

//importing database

private void importDB() {

// TODO Auto-generated method stub

try {

File sd = Environment.getExternalStorageDirectory();

File data = Environment.getDataDirectory();

if (sd.canWrite()) {

String currentDBPath= "//data//" + "PackageName"

+ "//databases//" + "DatabaseName";

String backupDBPath = "/BackupFolder/DatabaseName";

File backupDB= new File(data, currentDBPath);

File currentDB = new File(sd, backupDBPath);

FileChannel src = new FileInputStream(currentDB).getChannel();

FileChannel dst = new FileOutputStream(backupDB).getChannel();

dst.transferFrom(src, 0, src.size());

src.close();

dst.close();

Toast.makeText(getBaseContext(), backupDB.toString(),

Toast.LENGTH_LONG).show();

}

} catch (Exception e) {

Toast.makeText(getBaseContext(), e.toString(), Toast.LENGTH_LONG)

.show();

}

}

//exporting database

private void exportDB() {

// TODO Auto-generated method stub

try {

File sd = Environment.getExternalStorageDirectory();

File data = Environment.getDataDirectory();

if (sd.canWrite()) {

String currentDBPath= "//data//" + "PackageName"

+ "//databases//" + "DatabaseName";

String backupDBPath = "/BackupFolder/DatabaseName";

File currentDB = new File(data, currentDBPath);

File backupDB = new File(sd, backupDBPath);

FileChannel src = new FileInputStream(currentDB).getChannel();

FileChannel dst = new FileOutputStream(backupDB).getChannel();

dst.transferFrom(src, 0, src.size());

src.close();

dst.close();

Toast.makeText(getBaseContext(), backupDB.toString(),

Toast.LENGTH_LONG).show();

}

} catch (Exception e) {

Toast.makeText(getBaseContext(), e.toString(), Toast.LENGTH_LONG)

.show();

}

}

}

不要忘记添加此权限以继续进行

请享用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值