当前位置: 移动技术网 > IT编程>移动开发>Android > Android导入现有的数据库方法示例

Android导入现有的数据库方法示例

2019年07月24日  | 移动技术网IT编程  | 我要评论

java教程pdf,力乐多,易乳宝官网

前言

大家在平时见到的android数据库操作一般都是在程序开始时创建一个空的数据库,我们然后在进行相关操作。这个我们就比较好做了,因为这个数据库是我们一开始就跟着这个应用走的,那么我们有的时候不可能什么都是自己去做的。我们要是需要使用一个已有数据的数据库怎么办呢?大家想一想在android系统下数据库应该存放在什么地方呐,我们要是知道数据库存放在什么地方就好办了,现在大家有没有思路了。没有的话,下面来看看详细的介绍吧。

方法如下

我们都知道 android的 数据库默认是放在data\data\packagename\datbases\下的;

要导入现有的数据库将我们的数据库在 程序第一次启动的时候将数据库放在这个目录下,然后我们配置好sqlitedabase对象就可以 直接操作了。

/**
 * 将 数据库从 assets 复制到 databases下
 */
private void copydb() {
 //data/data/packagename/databases/
 file mkdir = new file(getfilesdir().getparent(),"databases");
 //创建 databases文件夹
 if (!mkdir.exists()) mkdir.mkdirs();
 log.e(tag, "copydb: mkdir="+mkdir.getpath());
 //数据库文件
 file file = new file(mkdir,"sinbusinesswssm1.db");
 //只是在程序第一次启动时创建
 if(!file.exists()){
  //获取 assets管理
  assetmanager assets = getassets();
  //执行文件复制
  try {
   inputstream open = assets.open("sinbusinesswssm1.db");
   fileoutputstream fos = new fileoutputstream(file);
   byte[] bs = new byte[1024];
   int len ;
   while ((len = open.read(bs))!=-1){
    fos.write(bs,0,len);
   }
   fos.flush();
   fos.close();
   open.close();
  } catch (ioexception e) {
   e.printstacktrace();
  }
 }
 log.e(tag, "copydb: exists="+file.getpath());
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对各位android开发者们能带来一定的帮助,如果有疑问大家可以留言交流。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网