【发布时间】:2009-09-30 00:22:31
【问题描述】:
我的 Android 应用程序在 assets 目录中有一些文件,我想在启动时通过列出目录中的文件并打开每个文件来打开它们。我正在尝试使用 AssetManager 来执行此操作,但它似乎没有像我预期的那样做。我的示例代码如下。这是正确的方法还是有更好的方法?
我正在使用以下方法打印资产目录树。
void displayFiles (AssetManager mgr, String path) {
try {
String list[] = mgr.list(path);
if (list != null)
for (int i=0; i<list.length; ++i)
{
Log.v("Assets:", path +"/"+ list[i]);
displayFiles(mgr, path + list[i]);
}
} catch (IOException e) {
Log.v("List error:", "can't list" + path);
}
}
从我的 Activity 的 onCreate 方法中,我执行以下操作:
final AssetManager mgr = getAssets();
displayFiles(mgr, "/assets");
displayFiles(mgr, "./assets");
displayFiles(mgr, "/");
displayFiles(mgr, "./");
这给了我以下输出
09-29 20:08:27.843: 调试/GFlash(6543): //AndroidManifest.xml 09-29 20:08:27.954: 调试/GFlash(6543): //META-INF 09-29 20:08:28.063:调试/GFlash(6543)://资产 09-29 20:08:28.233: 调试/GFlash(6543): //classes.dex 09-29 20:08:28.383: 调试/GFlash(6543): //com 09-29 20:08:28.533: 调试/GFlash(6543): //res 09-29 20:08:28.683: 调试/GFlash(6543): //resources.arsc提前致谢!
约翰
【问题讨论】:
标签: android