2015-02-12 85 views

回答

1

當您卸載應用程序的應用程序文件夾內總會被刪除。你想要的是創建一個外部文件夾,在SD卡上,當你刪除你的應用程序時,這不會去。

例子:

public void writeToSDCard() throws IOException { 


     System.out.println("Write To Sd"); 
     File f=new File("/data/data/com.yourapp/databases/Bdr"); 
     FileInputStream fis=null; 
     FileOutputStream fos=null; 

     try{ 
      fis=new FileInputStream(f); 


      fos=new FileOutputStream("/mnt/sdcard/dumped.db"); 
      while(true){ 
       int i=fis.read(); 
       if(i!=-1){ 
        fos.write(i); 
       } 
       else{ 
        break; 
       } 
      } 
      fos.flush(); 

     } 
     catch(Exception e){ 
      e.printStackTrace(); 

     } 
     finally{ 
      try{ 
       fos.close(); 
       fis.close(); 
      } 
      catch(IOException ioe){ 
       //  System.out.println(ioe); 
      } 
     } 
    } 

上面的代碼將您的數據庫寫入外部SD卡的名稱等於dumped.db並在卸載這一點,你會發現將你的SD卡

不要忘記仍然存在根據您的使用情況編輯File f=new File("/data/data/com.yourapp/databases/Bdr");

還拿你不硬編碼的路徑,SD卡使用Enviornmant.getExternalStorage()代替

+0

感謝您的答覆特殊照顧,錯誤就可以刪除數據庫是SD卡的權利,所以需要一個差異的解決方案 – Madhu 2015-02-12 08:09:53

+0

是的,沒有適當的解決方案:) – Skynet 2015-02-12 08:11:00

相關問題