天天看點

sd卡檔案操作

1. 得到儲存設備的目錄:/SDCARD(一般情況下)

SDPATH=Environment.getExternalStorageDirectory()+"/";

2. 判斷SD卡上的檔案夾是否存在:通過File對象的exists()方法。

  /**

   * 判斷檔案是否已經存在;

   *

  /

  public boolean checkFileExists(String filepath) {

         File file=new File(SDPATH+filepath);

         return file.exists();

    }

3.在SD卡上建立目錄:通過File對象的mkdir()方法實作。

  /*

   * 在SD卡上建立目錄;

   */

  public File createDIR(String dirpath) {

    File dir=new File(SDPATH+dirpath);

    dir.mkdir();

    return dir;

}

4.在SD卡上建立檔案:通過File對象的createNewFile()方法實作。

   * 在SD卡上建立檔案;

     public File createFile(String filepath) throws IOException{

      File file=new File(SDPATH+filepath);

           file.createNewFile();

           return file;

     }

5.将InputStream位元組流寫入到SD卡檔案中。

     /**

      * 将一個InputStream中的資料寫入至SD卡中

      */

   public File writeStreamToSDCard(String dirpath,String filename,InputStream input) {

             File file = null;

             OutputStream output=null;

              try {

                  //建立目錄;

                  createDIR(dirpath);

                  //在建立 的目錄上建立檔案;

                  file = createFile(dirpath+filename);

                  output=new FileOutputStream(file);

                  byte[]bt=new byte[4*1024];

                  while (input.read(bt)!=-1) {

                     output.write(bt);

                  }

                //重新整理緩存,

                  output.flush();

              } catch (IOException e) {

                  e.printStackTrace();

              }

              finally{

                  try{

              output.close();

          catch (Exception e) {

                     e.printStackTrace();

             return file;

6. 通路的權限:

需在AndroidManifest中加上:

<uses-permission android:name="android.permission.INTERNET"></uses-permission>

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>

轉自:http://www.cnblogs.com/onlyinweb/archive/2012/08/13/2636159.html

繼續閱讀