java - 使用 AssetManager.list 列出子目录中的 Assets

标签 java android

我的应用程序有一个 Assets 目录,我在其中转储了一堆我需要在运行时加载的文本文件。

我有一个包含特定类型 Assets (即“assets/subdir”)的目录,我想一次加载该目录中的所有文件。

我有这样的代码:


AssetManager assetMgr = getAssets();

String[] assetsIWant = assetMgr.list("subdir");

for(String asset: assetsIWant) {
  doAssetyThing(asset);
}

我已经为assetMgr.list() 尝试了无数种不同版本的参数,但没有得到任何结果。

如果我使用“/”,我会返回一个包含“assets”目录的列表,以及一些随机的其他项目(例如 META_INF)。如果我传递任何其他字符串(如“assets”或“assets/”或“/assets”或“/assets/”或“mysubdir”或“/mysubdir”或“assets/mysubdir”或...),那么我得到返回一个空数组。

不幸的是,文档相当不连贯。

有人知道 list() 参数的正确公式是什么吗?

最佳答案

传递一个空字符串似乎对我有用。当我执行以下操作时,我会获得 Assets 目录中的文件列表:

AssetManager aMan = appContext.getAssets();
String[] filelist = aMan.list("");

关于java - 使用 AssetManager.list 列出子目录中的 Assets ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3631370/

相关文章:

java - 如何将变量数据从 JFrame 传递到另一个?

android - 在 google chrome 浏览器中 React Native Android 深度链接

Android Firebase 将多个帐户提供商与匹配的电子邮件链接起来

javascript - 播放 m3u8 文件时 cordova-plugin-media 出错

java - 告诉 Java Class<T> T 中有某个方法

java - Stringarray 保持 null Java

java - Selenium WebDriver Java - 我无法从 span 获取动态文本

java - MongoDB $aggregate $push Java Spring Data中的多个字段

Android 地理编码错误 :java. io.IOException 在模拟器上,SDK 2.3

android - LiveData Room 进入后台时丢失数据