Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 在Android程序中使用已有的SQLite數據庫

在Android程序中使用已有的SQLite數據庫

編輯:關於Android編程

在之前做的聯系人項目中,應用安裝完以後需要顯示數據庫中預存的數據,這時需要導入已有的數據庫contact.db。這也是一個面試題,那麼如何實現呢?
首先在res中新建raw文件夾,res\raw目錄中的文件不會被壓縮,這樣可以直接提取該目錄中的文件。那麼如何把raw文件下面的數據庫文件contact.db導入到Android程序中的database目錄下呢?
下面提供一個導入現有數據庫的工具類:importDatabase

public void importDatabase() {
        // 存放數據庫的目錄
        String dirPath = "/data/data/com.example.contact/databases";
        File dir = new File(dirPath);
        if (!dir.exists()) {
            dir.mkdir();
        }
        // 數據庫文件
        File file = new File(dir, "contact.db");
        try {
            if (!file.exists()) {
                file.createNewFile();
            }
            // 加載需要導入的數據庫
            InputStream is = this.getApplicationContext().getResources()
                    .openRawResource(R.raw.contact);
            FileOutputStream fos = new FileOutputStream(file);
            byte[] buffere = new byte[is.available()];
            is.read(buffere);
            fos.write(buffere);
            is.close();
            fos.close();

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catcriOException e) {
            e.p`
ntStackTrace();
        }
    }

最後在MainActivity的oncreate()方法中調用importDatabase()方法即可,應用安裝完成後數據庫會自動創建。
這裡寫圖片描述

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved