前言
大家在平時見到的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開發者們能帶來一定的幫助,如果有疑問大家可以留言交流。
新聞熱點
疑難解答