java8 遍历目录下的全部子目录和子目录的子目录,过滤出有大于1张jpg的目录名称,如何写 ?

如题所述

使用递归进行:

class T {
public static void main(String[] args) {
String path = "d:\\test\\";
File filePath = new File(path);

if (filePath.isDirectory()) {
countJPG(filePath);
} else {
System.out.println("必须由一个目录开始");
}
}

private static void countJPG(File directory) {
for (File file : directory.listFiles()) {
if (file.isDirectory()) {
countJPG(file);
} else {
if ("jpg".equals(file.getName().split("\\.")[1])) {
System.out.println(directory.getPath());
break;
}
}
}
}
}


补充一下,这个程序其实有个bug,如果有的文件没有后缀名,我通过"."来裁剪文件名就会有问题。

运行结果:

我分别在这两个目录下放了图片

温馨提示:内容为网友见解,仅供参考
无其他回答

java8 遍历目录下的全部子目录和子目录的子目录,过滤出有大于1张jpg的...
class T {public static void main(String[] args) {String path = "d:\\\\test\\\\";File filePath = new File(path);if (filePath.isDirectory()) {countJPG(filePath);} else {System.out.println("必须由一个目录开始");}}private static void countJPG(File directory) {for (File file...

子目录和子域名的区别是什么,用哪种比较好?
子目录属于二级目录,举个例子大家就明白了,比如https:\/\/www.baidu.com\/zhidao\/ 这种形式就属于二级目录,就是网站主目录下一个名字为“zhidao”的文件夹。打个形象化的比喻,你在电脑新建一个总文件夹,然后打开总文件夹再新建一个文件夹,此时新建的这个文件夹就是总文件夹下面的二级目录。 还有,像https:\/\/zhidao....

要求运行A.BAT能遍历当前目录及子目录下面的所有文件,并全部打开,但本 ...
for \/f "delims=" %%a in ('dir \/s \/b \/a-d^|findstr \/v \/i "a.bat"') do (start "" "%%a")排除a.bat

如何删除一个目录及其子目录下的所有的jpg文件?
在该目录上,右键点击“搜索”,在“全部或部分文件名”里填写“*.jpg”,点击搜索,将结果全选,删除即可。

如何删除一个目录及其子目录下的所有的jpg文件?
打开该目录文件夹 然后右上角有个 搜索 输入 *.JPG 等搜索完成之后 全部选择 删除就是了!

求一个批处理bat,把子目录下的文件剪切到一个新的目录
echo off for \/r d:\\12 %%a in(*.jpg) do md d:\\jpg & move \/y "%%a" d:\\jpg\\ 会将d:\\12目录下的所有.jpg文件移动到 d:\\jpg 目录里并且强制覆盖重名文件..如果有同名文件的话就要把 \/y 选项去掉.

怎么把所有更目录和子目录的文件全部设置为平铺?
先进入一个盘,选用平铺的方式,然后点工具-选文件夹选项-应用到文件夹-确定,OK了!!PS:那个文件夹选项必需是工具栏上的工具选的,在控制版面选的无效..

python遍历文件夹下所有子文件夹中的excel文件,并提取指定
为解决遍历文件夹下所有子文件夹中的excel文件并提取指定内容的问题,我们首先需要列出当前目录下的全部子目录。此操作可通过使用os.walk()函数实现。该函数能返回一个元组,包含当前目录路径(root)、子目录列表(dirs)和非目录子文件列表(files)。你只需在X处插入自定义代码逻辑以处理其他需求。若仅...

在无系统的状态下如何从其它盘进入DOS?
MD——建立子目录1.功能:创建新的子目录2.类型:内部命令3.格式:MD[盘符:][路径名]〈子目录名〉4.使用说明:(1)“盘符”:指定要建立子目录的磁盘驱动器字母,若省略,则为当前驱动器;(2)“路径名”:要建立的子目录的上级目录名,若缺省则建在当前目录下。例:(1)在C盘的根目录下创建名为FOX的子目录;(2)...

如何用acdsee批量处理目录及子目录下所有图片大小
只能一个一个子文件夹分别调整,或者把图片剪切到同一个文件夹下调整,具体步骤如下:操作步骤如下:1、启动acdsee,通过资源管理器找到要修改大小的文件所在文件夹;2、选择该文件夹下要改变大小的图片文件,点击工具栏批量按钮,弹出菜单点击调整大小;3、弹出对话框点击所需的更改方式,输入相应参数,...

相似回答