我想列出资产文件夹中的文件夹和文件,但我发现我是空的。我搜索了答案,但它没有帮助,谷歌,stackoverflow和许多其他人。
我尝试了很多使用AssetManager的方法,只有一些输出是:
getAssets()列表(" /&#34);
但是它列出的资产文件夹是空的......
我从eclipse(usb上的设备)运行应用程序。谁能告诉我我做错了什么?我觉得我打开的资产文件夹不是我的应用程序...
提前致谢!
答案 0 :(得分:3)
我使用的是getAssets().list("/");
,它返回了应用根目录中的文件列表:
D/ (25498): Listing files in /
D/ (25498): AndroidManifest.xml
D/ (25498): META-INF
D/ (25498): assets
D/ (25498): classes.dex
D/ (25498): lib
D/ (25498): res
D/ (25498): resources.arsc
然后我尝试列出"/assets"
,但它总是空的。然后我发现需要一个相对路径,并且不能使用根文件夹的/
。
getAssets().list("");
列出资产文件夹根目录中的文件。
答案 1 :(得分:0)
试试这个:
AssetManager assetManager = appContext.getAssets();
String[] filelist = assetManager.list("");
答案 2 :(得分:0)
你可以获得这样的资产文件:
try {
Resources res = getResources();
AssetManager am = res.getAssets();
String fileList[] = am.list("/");
} catch (IOException e) {
e.printStackTrace();
}
答案 3 :(得分:0)
我看到你正在使用Eclipse,我切换到Android Studio但遇到了同样的问题。比较许多答案让我想到了这个:
https://stackoverflow.com/a/33542563/524355
资产文件夹是" next"到res文件夹(在AS中,甚至还有一个向导)。我把它手动地放到" res资源文件夹,为什么资产文件夹已经/没有编译到apk中!如果这是由您在Eclipse(ADT)中使用的构建工具完成的,那么您可能会遇到相同的情况。