【问题标题】:android list files contained in assets subfolder资产子文件夹中包含的android列表文件
【发布时间】:2012-03-05 10:18:18
【问题描述】:

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

我用过,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]); 
                }
            }
    }    

【问题讨论】:

    标签: java android eclipse


    【解决方案1】:

    您可能想要这样做:

    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");

    【讨论】:

    • 如何获取文件名?
    • @The_Lazy_Man Assetmanager.list() 方法返回的字符串数组不是你想要的吗?
    • 是的,你是对的。但我面临新的问题。无法获取资源 ID 来初始化 ImageView。因为资产文件没有提供给我。谢谢你的回复。 :)
    • @The_Lazy_Man assets 中的文件没有得到id,你不得不使用AssetManager 的方法并自己构建位图(然后在ImageView 上设置它) .
    • 是的,我要走你的路了。之后会给你反馈。
    【解决方案2】:

    最简单的肯定是这样的:

    String[] fileList = getAssets().list("images");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-04-13
      • 1970-01-01
      • 2017-09-28
      • 1970-01-01
      • 2021-03-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多