android:拷贝sqlite数据库到本地sd卡

原创 2015年11月20日 15:25:33

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();
			}
		}
	}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

android中数据库的拷贝

SQLiteDatabase不支持直接从assets读取文件,所以要提前拷贝数据库。在读取数据库时,先在项目中建立assets文件夹用于存放外部文件,将数据库文件拷到该目录下。代码方法: /** ...
  • xu__cg
  • xu__cg
  • 2016年08月13日 15:49
  • 532

Android 拷贝数据库文件

做android开发时,有时并不一定要创建数据库然后插入数据的过程。譬如,需要提供一个大数据量资源的搜索功能。像号码归属地,城市列表,ip归属地等。此时如果键数据库,再将数据一条一条insert到数据...

android数据库拷贝出错

今天测试项目,需要将assets目录下的数据库拷贝到data/data/***/databases/下,发现第一次访问数据库时,总是会崩掉,调试了半天,发现建立输出流FileOutputStream时...

Android 拷贝数据库文件

做android开发时,有时并不一定要创建数据库然后插入数据的过程。譬如,需要提供一个大数据量资源的搜索功能。像号码归属地,城市列表,ip归属地等。此时如果键数据库,再将数据一条一条insert到数据...

Android本地数据存储之SQLite

Android给我们提供了一个轻量级数据库SQLite。 SQLite是一个轻量级关系型数据库, Android内置的是SQLite3版本 SQLite支持五种数据类型:NULL,INTEGER,...
  • wu_wxc
  • wu_wxc
  • 2015年10月29日 09:43
  • 5439

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

android复制数据库到SD卡

android中使用sqlite、复制assets下的数据库到SD卡、支持大于1M的文件 如果使用SD卡,需要在AndroidManifest.xml中设置权限 uses-permissi...
  • vrix
  • vrix
  • 2011年11月10日 15:31
  • 4458

Android导出应用数据库

Android开发的时候有时候会必须要导出自己APP的数据库,但是对于常用的Android手机很多都没有root权限,网站上流传的一些教程也是针对有root权限的,对于没有root权限的手机,大多是要...

Android Studio 拷贝使用外部数据库

Android Studio 拷贝使用外部数据库

【Android】通过控制台将sqlite数据库文件导出

假设你的工程所在文件夹 .com.yourproject 那么sqlite数据库文件所在文件夹是: /data/data/com.yourproject/databases 假...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android:拷贝sqlite数据库到本地sd卡
举报原因:
原因补充:

(最多只允许输入30个字)