sqlite小型数据库,在开发的时候用于保存数据,在这不做关于它的介绍,本文只是写出了怎么拷贝应用的数据到本地sd卡中。如:一个数据库名为dandy.db的,拷贝到本地中叫seeker.db
代码如下:
代码如下 | 复制代码 |
/** * 拷贝数据库到sd卡 * * @deprecated */ publicstaticvoidcopyDataBaseToSD(){ if(!Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) { return; } File dbFile =newFile(MvpApplication.getApplication().getDatabasePath("dandy")+".db"); File file =newFile(Environment.getExternalStorageDirectory(),"seeker.db");
FileChannel inChannel =null,outChannel =null;
try{ file.createNewFile(); inChannel =newFileInputStream(dbFile).getChannel(); outChannel =newFileOutputStream(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(); } } } |