java - 如何检查文件夹是否包含具有特定路径的n个文件

标签 java android file path

我正在开发一个 Android 应用程序,我必须实现一个返回整数的函数。

我有一个包含不同文件的文件夹,每个文件都由这样的自定义路径组成:

  • 123_part_ax0.jpg

  • 123_part_ax1.jpg

  • 123_part_ax2.jpg

  • 123_part_ax3.jpg

  • 123_part1_ax0.jpg

  • 123_part1_ax1.jpg

我需要计算所有具有相同路径的文件,例如:123_part_ax 在这种情况下 count = 4

* 我使用的解决方案 *

public int itemNumber(int id) {
    int nItem = 0;
    File dir = new File(Environment.getExternalStorageDirectory() + "/.PATH/"+id);
    File[] listOfFiles = dir.listFiles();

    for (int i = 0; i < listOfFiles.length; i++) {
        if(listOfFiles[i].getName().contains("WHAT I WHAT SEARCH")){
            nItem++;
        }
    }
    return nItem;
}

最佳答案

对于这种需要,您可以使用 File#list(FilenameFilter filter)File#listFiles(FilenameFilter filter)按文件名过滤文件夹的内容,然后获取结果数组的 length

例如 list(FilenameFilter):

int total = new File("/path/to/my/folder")
    .list((dir, name) -> name.startsWith("123_part_ax"))
    .length;

关于java - 如何检查文件夹是否包含具有特定路径的n个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40398233/

相关文章:

java - 为什么我不能在匿名类中使用 <Class>.this?

android - 如何在Alert Dialog中设置EditText的dp左右边距

android - 如何将结果(startActivityForResult)从 Activity 返回到 TabHost Activity?

Java servlet 上传新文件到服务器

python - 为什么将 .read() 放入我的代码中会导致它不起作用?

file - neo4j LOAD CSV 返回无法加载外部资源 - neo4j 在目录中丢失

java - 在servlet 3.0中使用Log4j2

java - 使用自定义搜索建议提供程序时获取搜索查询字符串

java - 如何使用 ActionListener 在鼠标释放/鼠标松开时执行操作?

java - 如何将音频文件修剪到不到1秒?