2012-03-05 135 views
11

我创建了一些资源文件夹。每个文件夹都包含我想要列出的文件。我正在使用以下代码,但我总是得到fileList的空值。谢谢。资产子文件夹中包含的android列表文件

我用,listFiles("/assets/images/","nothing");

private void listFiles(String dirFrom, String dirTo) { 


     File f = new File(dirFrom); 

     String fileList[] = f.list(); 

      if (fileList != null) 
      { 
       for (int i = 0;i<fileList.length;i++) 
       { 
        Log.d("",fileList[i]); 
       } 
      } 
    }  

回答

26

你可能会想这样做:

private void listFiles(String dirFrom) { 
     Resources res = getResources(); //if you are in an activity 
     AssetManager am = res.getAssets(); 
     String fileList[] = am.list(dirFrom); 

      if (fileList != null) 
      { 
       for (int i = 0;i<fileList.length;i++) 
       { 
        Log.d("",fileList[i]); 
       } 
      } 
    } 

而且你的函数调用应该是:listFiles("images");如果要列出图像。

+0

如何获得文件名? – 2014-05-09 20:29:55

+0

@The_Lazy_Man不是'Assetmanager.list()'方法返回的字符串数组是什么? – Luksprog 2014-05-10 05:02:19

+0

是的,你是对的。但我面临新的问题。无法获取资源ID来初始化ImageView。因为资产文件不能提供给我。谢谢你的回复。 :) – 2014-05-10 08:47:18

6

最简单的肯定是这样的:

String[] fileList = getAssets().list("images"); 
相关问题