时间:2021-08-11 08:24:14 | 栏目:Android代码 | 点击:次
sqlite小型数据库,在开发的时候用于保存数据,在这不做关于它的介绍,本文只是写出了怎么拷贝应用的数据到本地sd卡中。如:一个数据库名为dandy.db的,拷贝到本地中叫seeker.db
代码如下:
/** * 拷贝数据库到sd卡 * * @deprecated <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> */ public static void copyDataBaseToSD(){ if (!Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) { return ; } File dbFile = new File(MvpApplication.getApplication().getDatabasePath("dandy")+".db"); File file = new File(Environment.getExternalStorageDirectory(), "seeker.db"); FileChannel inChannel = null,outChannel = null; try { file.createNewFile(); inChannel = new FileInputStream(dbFile).getChannel(); outChannel = new FileOutputStream(file).getChannel(); inChannel.transferTo(0, inChannel.size(), outChannel); } catch (Exception e) { LogUtils.e(TAG, "copy dataBase to SD error."); e.printStackTrace(); }finally{ try { if (inChannel != null) { inChannel.close(); inChannel = null; } if(outChannel != null){ outChannel.close(); outChannel = null; } } catch (IOException e) { LogUtils.e(TAG, "file close error."); e.printStackTrace(); } } }