我正在开发一个 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/