`
梦想家dream
  • 浏览: 63802 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

Android如何获取asset目录下所有文件的路径

阅读更多
package com.hangcheng.util;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import android.app.Activity;
import android.content.Context;
import android.content.res.AssetManager;

public class GetfilesFromAssets {
	private Activity activity;
	private String[] files;

	public GetfilesFromAssets(Context context) {
		this.activity = (Activity) context;

	}

	// public void deepFile(Context ctxDealFile, String path) {
	// try {
	// String str[] = ctxDealFile.getAssets().list(path);
	// if (str.length > 0) {// 如果是目录
	// File file = new File("/data/" + path);
	// file.mkdirs();
	// for (String string : str) {
	// path = path + "/" + string;
	// System.out.println("zhoulc:\t" + path);
	// // textView.setText(textView.getText()+"\t"+path+"\t");
	// deepFile(ctxDealFile, path);
	// path = path.substring(0, path.lastIndexOf('/'));
	// }
	// } else {// 如果是文件
	// InputStream is = ctxDealFile.getAssets().open(path);
	// FileOutputStream fos = new FileOutputStream(new File("/data/"
	// + path));
	// byte[] buffer = new byte[1024];
	// int count = 0;
	// while (true) {
	// count++;
	// int len = is.read(buffer);
	// if (len == -1) {
	// break;
	// }
	// fos.write(buffer, 0, len);
	// }
	// is.close();
	// fos.close();
	// }
	// } catch (IOException e) {
	// // TODO Auto-generated catch block
	// e.printStackTrace();
	// }
	// }

	public String[] getfileFromAssets(String path) {
		AssetManager assetManager = activity.getAssets();
		// String[] files;
		try {
			files = assetManager.list(path);
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		return files;

	}

	public List listHtmlOfAssets() {
		List list = new ArrayList();
		files = getfileFromAssets("html");
		for (int i = 0; i < files.length; i++) {
			HashMap map = new HashMap();
			map.put("htmlname", files[i]);
			list.add(map);
		}
		return list;
	}
}
0
4
分享到:
评论

相关推荐

    android MediaPlayer播放视频网络URL,asset目录下文件,本地视频文件

    在本教程中,我们将深入探讨如何使用`MediaPlayer`播放网络URL、Asset目录下的文件以及本地视频文件。 一、播放网络URL视频 1. 首先,我们需要获取到网络视频的URL。这通常是一个HTTP或HTTPS链接,例如:`...

    android复制asset中文件到SD卡

    // 获取目标文件路径 File file = new File(folder, "example.txt"); outputStream = new FileOutputStream(file); byte[] buffer = new byte[1024]; int length; while ((length = inputStream.read(buffer)...

    Android中安装asset下的apk

    3. **环境准备**:本例中,我们将把APK文件从`assets`目录复制到外部存储空间中的特定路径下,并从该路径启动安装流程。 #### 三、代码实现 下面是一个完整的示例代码,用于实现在Android应用中安装存储于`assets`...

    android 将assets 下的文件复制到手机内存中

    下面将详细解释如何在Android应用中将assets目录下的文件复制到手机内存。 首先,`assets`目录是Android应用中的一个特殊目录,它允许开发者存放非编译型的资源文件,这些文件在应用运行时可以通过AssetManager访问...

    读写Android中assets目录下的文件的方法详解

    2. **列举目录**:`AssetManager.list(String path)`,这个方法返回一个字符串数组,包含了指定路径下所有文件和子目录的名字。通过递归调用`list`方法,可以遍历整个目录结构并访问所有资源文件。 下面是一段示例...

    android 读取 assets 文件夹下的音频

    `open()`方法接收一个字符串参数,表示你要打开的文件路径。由于`assets`目录是根目录,所以只需提供文件名即可。如果文件不存在或者读取过程中发生错误,会抛出`IOException`。 读取音频文件后,可能需要将其转换...

    Android Assets文件和Raw文件读取

    Assets支持子目录结构,可以通过路径参数来访问子目录下的文件。例如,如果有一个子目录`images`,文件名为`image.png`,则打开方式为: ```java is = assetManager.open("images/image.png"); ``` **Android Raw...

    android动态加载外部资源文件

    1. 获取外部apk的路径:首先,你需要在应用的沙盒目录或其他允许的地方存储外部apk文件,并获取到它的完整路径。 2. 解析apk:使用ZipFile或ApkUtils等工具类解析apk文件,获取其中的资源信息。这通常涉及到读取apk...

    Android 加载assets文件夹的文本文件 图片

    - 文件路径:在`AssetManager`中,文件路径是相对于`assets`目录的,不需要包含`assets/`前缀。 - 错误处理:当文件不存在或读取过程中出现错误时,务必捕获并处理`IOException`。 - 资源释放:读取完成后,记得...

    获取asset文件夹中的txt文件方法

    注意,由于Android应用的安全性和权限管理,我们不能直接通过文件路径访问assets目录,必须通过AssetManager来操作。此外,assets中的文件在应用安装后是不可修改的,如果需要动态更新文本数据,可以考虑使用内部...

    Android Ndk: 如何从native层直接获取 assets文件夹下的文件-附件资源

    Android Ndk: 如何从native层直接获取 assets文件夹下的文件-附件资源

    基于android application asset文件,完成sqlite自创建与更新

    总结来说,基于Android Application Asset文件完成SQLite的自创建与更新是一种高效的方法,特别是在处理大量初始数据或频繁更新数据库结构的场景下。SQLiteAssetHelper库提供了一个简洁的接口,让开发者能专注于业务...

    android的assets下的sql文件操作

    本文将深入探讨如何在Android中利用`assets`目录下的SQL文件进行数据操作,包括数据库的读取、查询和删除功能。 首先,`assets`目录是Android工程中的一个特殊目录,它不在编译后的APK的主资源目录下,而是用于存放...

    从assets目录复制文件夹和文件,(不只是文件,附demo)

    2. **列出assets目录下的文件或文件夹**:使用`list()`方法可以获取指定路径下所有文件或文件夹的名称列表。 ```java String[] files = assetManager.list("folder_name"); // folder_name 是assets下的子目录 ``` ...

    Android播放assets文件里视频文件相关问题分析

    然而,直接通过Intent来播放assets目录下的视频文件可能会遇到问题,如Android系统播放器无法识别或找不到文件。 为了解决这个问题,这里提供了一种有效的解决方案: 1. 将视频文件移动到`res/raw`目录下。这是...

    DexClassLoader自定义加载Assets目录下的dex、jar文件

    在这个例子中,“path_to_your_asset.dex”是位于Assets目录下的.dex文件路径,我们将其传递给DexClassLoader的构造函数。`getDir("dex", Context.MODE_PRIVATE)`用于创建一个私有的目录来存储优化后的.dex文件,...

    android用于打开各种文件的intent

    值得注意的是,还可以通过系统内部的etc目录来指定文件路径,如“Intent it = getHtmlFileIntent("/system/etc/tutorial.html");”。 ### 图片文件 对于图像文件,可以使用以下代码:“Intent it = ...

    Android将assets中的zip压缩文件解压到SD卡

    1. 打开`assets`目录下的ZIP文件: ```java AssetManager assetManager = getAssets(); InputStream is = null; try { is = assetManager.open("yourfile.zip"); } catch (IOException e) { e....

Global site tag (gtag.js) - Google Analytics