java 再帰的にフォルダ内のファルダやファイルを取得する
![java 再帰的にフォルダ内のファルダやファイルを取得する](https://mebee.info/wp-content/uploads/2022/05/java-890x500.png)
javaで、再帰的にフォルダ内のファルダやファイルを取得する手順を記述してます。
環境
- OS windows11 home
- java 17.0.2
手順
再帰的にフォルダ内のファルダやファイルを取得するには、「Stream」と「Files.walk」を使用します。
Stream<Path> stream = Files.walk(パス)
// 階層を指定することも可能です。1の場合は指定したパスの階層のみとなります
Stream<Path> stream = Files.walk(パス, 階層指定)
以下のフォルダ内のデータを取得してみます。
※「hoge.txt」は隠しファイルになってますが、これも取得されます。
![](https://mebee.info/wp-content/uploads/2022/05/image-305.png)
実行してみます。
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.Files;
import java.io.IOException;
import java.util.stream.Stream;
public class App {
public static void main(String[] args) throws Exception {
Path path = Paths.get("C:/java/test/src/");
try (Stream<Path> stream = Files.walk(path)){
stream.forEach(p -> System.out.println(p.toString()));
} catch (IOException e) {
System.out.println(e);
}
}
}
再帰的に取得されていることが確認できます。
![](https://mebee.info/wp-content/uploads/2022/05/image-306.png)
存在しないファイルを指定
存在しないファイルを指定すると「NoSuchFileException」が発生します。
![](https://mebee.info/wp-content/uploads/2022/05/image-304.png)
-
前の記事
kotlin 文字列から指定した位置から文字を抽出する 2024.06.24
-
次の記事
Google ドキュメント 置換を行うショートカットキー 2024.06.25
コメントを書く