从Assets目录获取文件夹名称

5

我正在尝试获取“assets”文件夹中的文件夹名称。使用AssetManager的assetManager.list()方法可以获取文件名。但问题在于它只返回文件名而不是文件夹名。因此,我尝试使用listFiles()方法,但无法访问Assets目录;我尝试了以下方法:

File dir = new File ("file:///android_asset/");
File[] files= dir.listFiles();

但是它不起作用 :( ... 有没有办法获取Assets目录中包含的文件夹名称?


阅读此链接,它包含您所需的答案: https://dev59.com/AGTWa4cB1Zd3GeqPHNaR。 - user3156262
1个回答

2

"file:///android_asset/"这个URL并没有指向特定的目录,它只是被WebView用来访问assets资源。Assets资源是只读的,并且在编译时就已经定义好了,因此程序员应该知道它们的目录结构。虽然有点不方便,但这就是设计方式。


啊!你是认真的吗?真的没有办法做到这一点吗?(我也尝试了Java反射,但它只适用于原始文件夹而不适用于资产)即使它很复杂...? - Nox
我建议制作一个脚本,在编译时生成一个XML或其他结构,代表资产目录的内容。为什么需要在运行时执行呢? - ognian
我的应用程序显示来自资产目录的图像,但它们在资产的文件夹层次结构中。我想我会在名称中指示层次结构。例如使用名称“flowers/roses.jpg”而不是一个名为“flowers”的文件夹,然后操作名称以查找层次结构。 - Nox

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接