Android编程读取Assets所有文件(遍历每一个文件夹)并存入sdcard的方法_Android

本文实例讲述了Android编程读取Assets所有文件(遍历每一个文件夹)并存入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()) {
      // 创建文件夹
      if (!mWorkingPath.mkdirs()) {
        // 文件夹创建不成功时调用
      }
    }
    for (int i = 0; i < files.length; i++) {
      try {
        // 获得每个文件的名字
        String fileName = files[i];
        // 根据路径判断是文件夹还是文件
        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();
      }
    }
}

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android数据库操作技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索android
, 读取assets
存入sdcard
拷贝assets到sdcard、遍历assets目录、android assets 遍历、遍历ul的每一个li、vba 遍历每一个单元格,以便于您获取更多的相关知识。

时间: 2024-10-29 11:38:35

Android编程读取Assets所有文件(遍历每一个文件夹)并存入sdcard的方法_Android的相关文章

Android编程中聊天页面背景图片、标题栏由于键盘引起问题的解决方法_Android

本文实例讲述了Android编程中聊天页面背景图片.标题栏由于键盘引起问题的解决方法.分享给大家供大家参考,具体如下: 在一个群里面有人问到 聊天页面由于键盘弹出来,导致自定义的标题栏不见和背景图片都变形了,然后自己也折腾了一下,在stackOverFlow上面找到了一个解决方法. 解决方法很简单: 1.在AndroidManifest.xml文件里面的Activity配置: 复制代码 代码如下: android:windowSoftInputMode="adjustResize|stateAl

Android编程使用Fragment界面向下跳转并一级级返回的实现方法_Android

本文实例讲述了Android编程使用Fragment界面向下跳转并一级级返回的实现方法.分享给大家供大家参考,具体如下: 1.首先贴上项目结构图: 2.先添加一个接口文件BackHandledInterface.java,定义一个setSelectedFragment方法用于设置当前加载的Fragment在栈顶,主界面MainActivity须实现此接口,代码如下: package com.example.testdemo; public interface BackHandledInterfa

Android编程实现横竖屏切换时不销毁当前activity和锁定屏幕的方法_Android

本文实例讲述了Android编程实现横竖屏切换时不销毁当前activity和锁定屏幕的方法.分享给大家供大家参考,具体如下: 首先在Mainifest.xml的Activity元素中加入android:configChanges="orientation|keyboardHidden"属性 <activityandroid:name=".FileBrowser"android:label="@string/app_name"android:

Android编程中activity启动时出现白屏、黑屏问题的解决方法_Android

本文实例讲述了Android编程中activity启动时出现白屏.黑屏问题的解决方法.分享给大家供大家参考,具体如下: 默认情况下 activity 启动的时候先把屏幕刷成白色,再绘制界面,绘制界面或多或少有点延迟,这段时间中你看到的就是白屏,显然影响用户体验,怎么消除呢? 在 Activity theme 设置style 即可 <style name="AppTheme" parent="android:Theme.Light.NoTitleBar">

Android编程开发之EditText中不输入特定字符会显示相关提示信息的方法

本文实例讲述了Android编程开发之EditText中不输入特定字符会显示相关提示信息的方法.分享给大家供大家参考,具体如下: 先看效果图: 源码如下: 布局文件: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="

Android编程实现在一个程序中启动另一个程序的方法

本文实例讲述了Android编程实现在一个程序中启动另一个程序的方法.分享给大家供大家参考,具体如下: Android 开发有时需要在一个应用中启动另一个应用,比如Launcher加载所有的已安装的程序的列表,当点击图标时可以启动另一个应用. 一般我们知道了另一个应用的包名和MainActivity的名字之后便可以直接通过如下代码来启动: Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEG

怎么把一个文件夹里多个文件名相同的文件移动到一个文件夹内并新建文件夹以该文件名命名文件夹名称

问题描述 怎么把一个文件夹里多个文件名相同的文件移动到一个文件夹内并新建文件夹以该文件名命名文件夹名称 怎么把一个文件夹里多个文件名相同的文件移动到一个文件夹内并新建文件夹以该文件名命名文件夹名称 解决方案 第一,你要在什么环境下实现 第二,举个例子,更好的说明你的问题 第三,去找度娘 解决方案二: 刚开始看见你的问题,头有点大,像是要口令,你用什么语言,完成这样事情啊 解决方案三: win里好像不行吧,百度都解决不了 解决方案四: 用Directory.GetFiles遍历文件夹找到文件,用F

java-为什么这段代码if里面的语句不会执行,ext.txt文件和该Java文件下同存在一个文件夹下

问题描述 为什么这段代码if里面的语句不会执行,ext.txt文件和该Java文件下同存在一个文件夹下 public static void main(String [] args){ File file=new File("ext.txt"); if(file.isFile()){ System.out.println("绝对路径:"+file.getAbsolutePath()); System.out.println("文件长度:"+fil

shutil rmtree-python中用shutil.rmtree()来删除目录及目录内部文件,最后一个文件总是删除不了

问题描述 python中用shutil.rmtree()来删除目录及目录内部文件,最后一个文件总是删除不了 为什么python中用shutil.rmtree()来删除目录及目录内部的文件,最后一个文件总是删除不了 解决方案 如果是Windows平台,请确认下最后那个文件是否被打开使用了. 解决方案二: 那个文件是否被占用了,能直接手动删除吗