【Android】判断assets文件夹下的某个文件是否存在

  编程的时候,我们并不能把所有的文件或者资源都放在res文件夹下,那样编译时会生成一个id,不仅会浪费资源还可能会出现各种各样的问题。有些文件放在assets文件下就比较好。那么放在assets文件夹下的文件要怎么获取呢?

看看下面的算法就很清楚了

    /**
     * 判断assets文件夹下的文件是否存在
     *
     * @return false 不存在    true 存在
     */
    private boolean isFileExists(String filename) {
        AssetManager assetManager = getAssets();
        try {
            String[] names = assetManager.list("");
            for (int i = 0; i < names.length; i++) {
                LogUtil.e(names[i]);
                if (names[i].equals(filename.trim())) {
                    System.out.println(filename + "存在");
                    return true;
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println(filename + "不存在");
            return false;
        }
        System.out.println(filename + "不存在");
        return false;
    }
上面的算法是获取assets文件夹根目录,如果要获取下面的子目录中的文件只要

String[] names = assetManager.list("a");
//获取assets文件下子目录文件夹a中的所有文件的名称


posted @ 2017-07-19 15:52  小钢炮丶  阅读(3651)  评论(0)    收藏  举报