从assets文件夹中获取仅具有.txt扩展名的文件的文件名

时间:2015-01-20 19:02:54

标签: java android arraylist

目前我有这个代码:

ArrayList<String> items = new ArrayList<String>();
                AssetManager assetManager = getApplicationContext().getAssets();
                try {
                     items.addAll(Arrays.asList(assetManager.list("")));
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }

这给了我一个资产文件夹中所有文件名的arraylist。 但是我需要对此进行过滤,以便arraylist只有具有.txt扩展名的文件的文件名,然后从每个项目名称中删除.txt。

因此,当前代码将导致:

test.txt
pi.txt
sounds
hippo.png
square.xml
seven.txt

但是当我需要时,arraylist的内容将是:

test 
pi 
seven

1 个答案:

答案 0 :(得分:8)

所以你需要做

ArrayList<String> items = new ArrayList<String>();
AssetManager assetManager = getApplicationContext().getAssets();
for (String file : assetManager.list("")) {
    if (file.endsWith(".txt"))
        items.add(file);
}

如果要从文件名中删除.txt扩展名

...
    items.add(file.replaceAll(".txt$", ""));
...