java如何使用Files.walkFileTree获取文件夹下的文件夹和文件数量呢?
下文笔者讲述使用Files.walkFileTree获取文件夹下“文件夹和文件”数量的方法分享,如下所示
实现思路:
使用preVisitDirectory即可获取文件夹信息
例:
import lombok.extern.slf4j.Slf4j;
import java.io.IOException;
import java.nio.file.*;
import java.nio.file.attribute.BasicFileAttributes;
import java.util.concurrent.atomic.AtomicInteger;
@Slf4j
public class TestFileWalkFileTree {
public static void main(String[] args) throws IOException {
AtomicInteger dirCount=new AtomicInteger();
AtomicInteger fileCount=new AtomicInteger();
Files.walkFileTree(Paths.get("d:\test"),new SimpleFileVisitor<Path>(){
@Override
public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException {
System.out.println("===>"+dir);
dirCount.incrementAndGet();
return super.preVisitDirectory(dir, attrs);
}
@Override
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
fileCount.incrementAndGet();
System.out.println("-->"+file);
return super.visitFile(file, attrs);
}
});
log.info("遍历文件夹数量:{},文件数量:{}",dirCount,fileCount);
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


