欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android編程讀取Assets所有文件(遍歷每一個(gè)文件夾)并存入sdcard的方法

 更新時(shí)間:2016年02月05日 11:49:13   作者:lee0oo0  
這篇文章主要介紹了Android編程讀取Assets所有文件(遍歷每一個(gè)文件夾)并存入sdcard的方法,涉及Android針對文件與目錄的遍歷及I/O操作相關(guān)技巧,需要的朋友可以參考下

本文實(shí)例講述了Android編程讀取Assets所有文件(遍歷每一個(gè)文件夾)并存入sdcard的方法。分享給大家供大家參考,具體如下:

private void CopyAssets(String assetDir, String dir) {
    String[] files;
    try {
      // 獲得Assets一共有幾多文件
      files = this.getResources().getAssets().list(assetDir);
    } catch (IOException e1) {
      return;
    }
    File mWorkingPath = new File(dir);
    // 如果文件路徑不存在
    if (!mWorkingPath.exists()) {
      // 創(chuàng)建文件夾
      if (!mWorkingPath.mkdirs()) {
        // 文件夾創(chuàng)建不成功時(shí)調(diào)用
      }
    }
    for (int i = 0; i < files.length; i++) {
      try {
        // 獲得每個(gè)文件的名字
        String fileName = files[i];
        // 根據(jù)路徑判斷是文件夾還是文件
        if (!fileName.contains(".")) {
          if (0 == assetDir.length()) {
            CopyAssets(fileName, dir + fileName + "/");
          } else {
            CopyAssets(assetDir + "/" + fileName, dir + "/"
                + fileName + "/");
          }
          continue;
        }
        File outFile = new File(mWorkingPath, fileName);
        if (outFile.exists())
          outFile.delete();
        InputStream in = null;
        if (0 != assetDir.length())
          in = getAssets().open(assetDir + "/" + fileName);
        else
          in = getAssets().open(fileName);
        OutputStream out = new FileOutputStream(outFile);
        // Transfer bytes from in to out
        byte[] buf = new byte[1024];
        int len;
        while ((len = in.read(buf)) > 0) {
          out.write(buf, 0, len);
        }
        in.close();
        out.close();
      } catch (FileNotFoundException e) {
        e.printStackTrace();
      }
      catch (IOException e) {
        e.printStackTrace();
      }
    }
}

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進(jìn)階教程》、《Android數(shù)據(jù)庫操作技巧總結(jié)》及《Android控件用法總結(jié)

希望本文所述對大家Android程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論