`

android 数据库导入方法

阅读更多

public class MySqliteHelper extends SQLiteOpenHelper {

 

 private static final String dbName = "/data/data/com.Aladin/databases/aladindb.db";
 private static final String DATABASE_PATH = "/data/data/com.Aladin/databases";
 private static final String DATABASE_FILENAME = "aladindb.db";
 private static int VERSION = 1;
 String databaseFileName = DATABASE_PATH + "/" + DATABASE_FILENAME;
 Context myContext;

 public MySqliteHelper(Context context, String name, CursorFactory factory,
   int version) {
  super(context, dbName, factory, VERSION);
  myContext = context;
  checkDBExists();
 }

 // ===================================================================
 // 根据城市名获得City
 @Override
 public void onCreate(SQLiteDatabase db) {
 }

 

 @Override
 public synchronized SQLiteDatabase getReadableDatabase() {
  checkDBExists();
  if (new File(databaseFileName).exists()) {
   SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(
     databaseFileName, null);
   return db;
  } else {
   return null;
  }
 }

 @Override
 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
 }

 // ===================================================================
 private void checkDBExists() {
  // 从资源文件中将数据库创建/data/data/com.Aladin/databases/aladindb.db
  // 1,获得路径
  File dir = new File(DATABASE_PATH);
  if (!dir.exists()) {
   dir.mkdir();
  }
  // 2,获得资源文件
  if (!(new File(databaseFileName).exists())) {
   try {
    // 3,读取资源并创建流
    InputStream is = myContext.getResources().openRawResource(
      R.raw.aladindb);
    FileOutputStream fos = new FileOutputStream(databaseFileName);
    // 4,复制
    byte[] buffer = new byte[8192];
    int count = 0;
    while ((count = is.read(buffer)) > 0) {
     fos.write(buffer, 0, count);
    }
    // 5,关闭流
    fos.close();
    is.close();
   } catch (NotFoundException e) {
    e.printStackTrace();
   } catch (FileNotFoundException e) {
    e.printStackTrace();
   } catch (IOException e) {
    e.printStackTrace();
   }
  }
 }

 

分享到:
评论

相关推荐

    android 数据库导入导出

    总结来说,Android数据库的导入导出是开发过程中的重要环节,可以采用备份文件或ContentProvider的方式。SQLiteSpy作为一款强大的SQLite工具,可以帮助开发者直观地查看和操作数据库,提升开发效率。理解并掌握这些...

    将Excel数据导入android数据库DB文件

    本教程将指导你如何将Excel数据导入到Android应用的SQLite数据库.db文件中,以便在应用运行时能够访问和操作这些数据。我们将使用SQLite Expert Professional这款强大的SQLite数据库管理工具,该工具在提供的压缩包...

    Android 数据库加密

    在Android开发中,数据存储是不可或缺的一部分,而随着对数据安全性的重视日益增强,数据库加密成为了一项重要的技术。SQLite是Android系统默认的轻量级数据库,它为开发者提供了便捷的数据存储方式。然而,SQLite...

    Android 将assets中的数据库导入到项目中databases

    总结,Android将`assets`中的数据库导入到`databases`目录,主要涉及到`SQLiteOpenHelper`的使用、文件流的操作以及权限管理。通过以上步骤,我们可以确保预设的SQLite数据库在应用安装后能够顺利地被加载和使用,...

    Android导入已有的SQLite数据库

    本文将详细介绍如何在Android项目中导入一个预建的SQLite数据库。首先,我们需要理解SQLite是Android系统内置的一种轻量级数据库,它支持事务处理,适合存储大量结构化数据。 **步骤一:创建SQLite数据库文件** 在...

    sqlite android数据库查看工具

    本文将详细介绍如何使用Android数据库查看工具来管理和分析SQLite数据库。 首先,我们需要了解Android数据库的基本操作。Android提供了SQLiteOpenHelper类,它是对SQLite数据库操作的基类,可以帮助我们创建、升级...

    Android 数据库详细指南

    ### Android 数据库详细指南 #### 一、引言 在当今移动应用开发中,数据管理是核心要素之一。Android作为全球最受欢迎的移动操作系统之一,其应用程序同样需要高效地存储和检索数据。为了满足这一需求,Android...

    Android 导出数据库到Excel表格功能

    在Android应用开发中,有时需要将应用程序内部的SQLite数据库数据导出到常见的Excel格式,以便用户可以方便地查看、编辑或共享数据。这个过程涉及到Android的数据库操作、文件读写以及与Excel文件格式的交互。以下是...

    Android数据库升级demos

    本篇“Android数据库升级demos”旨在通过实例展示如何在Android中优雅地处理数据库升级问题。 首先,Android使用SQLite作为默认的本地关系型数据库,它支持SQL语法,方便进行数据操作。当数据库升级时,我们通常会...

    sms.zip_Android 数据库_android_android sms_sms

    在Android操作系统中,短信数据的存储通常依赖于SQLite数据库,这是一种轻量级、关系型的数据库管理系统,适用于移动设备上本地数据存储。标题中的“sms.zip_Android 数据库_android_android sms_sms”暗示了这是一...

    Android数据库升级保留历史数据库数据

    总结来说,Android数据库升级是一个涉及数据安全和用户体验的重要任务。使用GreenDAO这样的ORM框架可以简化这一过程,但开发者仍需谨慎处理每一个升级步骤,确保数据的完整性和一致性。通过合理的规划和详尽的测试,...

    Android的Realm数据库增删改查实例

    在Android应用开发中, Realm是一个流行且高效的本地对象关系映射(ORM)数据库,它提供了比SQLite更简单、更快捷的API。 Realm数据库允许开发者直接在内存中操作数据,极大地提高了应用程序的性能和用户体验。本...

    android本地读取数据库db文件查询本地归属地

    这个项目就是一个关于如何在Android应用中本地读取SQLite数据库(db文件)查询归属地的示例。下面将详细介绍这个过程涉及的关键知识点。 首先,Android系统默认支持SQLite数据库,它是轻量级的关系型数据库,适合于...

    Android xutils的数据库增删改查带数据库升级

    导入后,可以创建一个`DBHelper`类来继承XUtils提供的`DbHelper`,这个类会负责初始化数据库和定义表结构。例如: ```java public class DBHelper extends DbHelper { public DBHelper(Context context) { super...

    Android 数据库并且导出Excel格式文件.zip

    通过`onCreate()`方法创建数据库,`onUpgrade()`方法升级数据库,`getWritableDatabase()`或`getReadableDatabase()`来获取数据库实例。 接着,要导出数据库中的表到Excel格式,我们需要理解Excel文件的结构。Excel...

    sqlcipher3.0.1 Android数据库解密工具 for Win

    提供的"sqlcipher3.0.1 Android数据库解密工具 for Win"可能包含以下部分: - **readme.txt**:一般会包含使用工具的说明和步骤,如如何导入数据库文件,如何输入解密密钥等。 - **bin**:这个目录可能包含可执行...

    android 读取本地中国城市数据库

    在Android开发中,读取本地...总之,在Android应用中读取本地中国城市数据库涉及数据库的设计、数据导入、查询操作以及数据展示等多个环节。通过熟练掌握SQLite和Android数据操作,可以构建高效、流畅的地理信息系统。

    android数据库

    本篇将深入探讨Android数据库的使用,特别是通过SQLite进行数据库操作。 1. **SQLite介绍** SQLite是一个开源的嵌入式SQL数据库引擎,无需单独的服务进程,可以直接在应用程序中使用。Android系统内置了SQLite,...

    android实现raw文件夹导入数据库代码

    - Android导入现有数据库的方法,可能包括复制文件到特定目录并用SQLiteOpenHelper处理。 - Android读取Excel文件的方法,可能涉及到第三方库如Apache POI。 - Android操作Excel文件的功能实现,包括创建、读取和...

    android SQLite数据库存储

    9. **数据备份与恢复**:Android提供了`SQLiteBackupHelper`类,用于实现应用的数据库备份和恢复功能,允许用户将数据导出或导入到其他设备。 10. **数据安全**:虽然SQLite数据库存储在本地,但为了保护敏感数据,...

Global site tag (gtag.js) - Google Analytics