示例代码
package com.example.nettytest.nio.day2;
import java.io.IOException;
import java.nio.file.*;
import java.nio.file.attribute.BasicFileAttributes;
import java.util.concurrent.atomic.AtomicInteger;
/**
* @description:
* @author: xz
* @create: 2022-07-31 10:48
*/
public class TestWalkFileTree {
public static void main(String[] args) throws IOException {
foreachJar();
}
/**
* 遍历文件夹下jar包的数量
* */
private static void foreachJar() throws IOException {
//计数器:jar包数量
AtomicInteger jarCount = new AtomicInteger();
//walkFileTree遍历文件树
Files.walkFileTree(Paths.get("D:\\Java\\jdk1.8.0_161"),new SimpleFileVisitor<Path>(){
//重写遍历文件方法
@Override
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
if(file.toString().endsWith(".jar")){
System.out.println(file);
jarCount.incrementAndGet();
}
return super.visitFile(file, attrs);
}
});
System.out.println("jar count:" +jarCount);
}
}
