Javaからフォルダ内のすべてのファイルを読み取るにはどうすればよいですか? 質問する

Javaからフォルダ内のすべてのファイルを読み取るにはどうすればよいですか? 質問する

Java を使用してフォルダー内のすべてのファイルを読み取るにはどうすればよいですか? どの API を使用してもかまいません。

ベストアンサー1

使用:

public void listFilesForFolder(final File folder) {
    for (final File fileEntry : folder.listFiles()) {
        if (fileEntry.isDirectory()) {
            listFilesForFolder(fileEntry);
        } else {
            System.out.println(fileEntry.getName());
        }
    }
}

final File folder = new File("/home/you/Desktop");
listFilesForFolder(folder);

ファイル.walkAPIはJava 8から利用可能です。

try (Stream<Path> paths = Files.walk(Paths.get("/home/you/Desktop"))) {
    paths
        .filter(Files::isRegularFile)
        .forEach(System.out::println);
} 

この例では、リソースを試すAPI ガイドで推奨されているパターン。これにより、どのような状況でもストリームが閉じられることが保証されます。

おすすめ記事