java8

Javaでディレクトリ以下を再帰的に削除

Files#walkが、ディレクトリの上から辿ってPathオブジェクトを返してくれるので、それを利用すると、割りときれいに書けるようです。

ファイル関連はtry-with-resourcesをするのが鉄板の模様

https://stackoverflow.com/questions/35988192/java-nio-most-concise-recursive-directory-delete

Path dir = Paths.get("/temp");
try(Stream<path> walk = Files.walk(dir, FileVisitOption.FOLLOW_LINKS))
{
                walk.sorted(Comparator.reverseOrder())
                .map(Path::toFile)
                .forEach(File::delete);
dir .toFile().delete();
} catch (IOException ie) {
 System.out.println(ie);
}