Простой посетитель файла в Java

Я впервые использую простой файл-посетитель, и документация кажется немного менее удобной. В основном я хочу посетить дерево каталогов и записать количество папок, общее количество файлов и количество посещенных файлов, таких как, txt, csv и т. Д.

Это мой FileVistor.

public class FileVisitor extends SimpleFileVisitor<Path>{


    @Override
    public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException {
        System.out.println("About to scan " + dir);
        return FileVisitResult.CONTINUE;
    }

    @Override
    public FileVisitResult postVisitDirectory(Path dir, IOException exc) throws IOException {
        System.out.println("Scanned " + dir);
        return FileVisitResult.CONTINUE;
    }

    @Override
    public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {


        return FileVisitResult.CONTINUE;
    }

    @Override
    public FileVisitResult visitFileFailed(Path file, IOException exc) throws IOException {
        System.err.println(exc.getMessage());
        return FileVisitResult.CONTINUE;
    }


}

И это мой код вызова.

Scanner scanner = new Scanner(System.in);
    String str = scanner.nextLine();
    Path path = Paths.get(str);
    FileVisitor visitor = new FileVisitor();
    Files.walkFileTree(path, visitor);

Любая помощь приветствуется.

0 ответов

Другие вопросы по тегам