Java SimpleFileVisitor delete Directory

Description

Java SimpleFileVisitor delete Directory

import java.io.IOException;
import java.nio.file.FileVisitResult;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.SimpleFileVisitor;
import java.nio.file.attribute.BasicFileAttributes;

class DeleteDirectory extends SimpleFileVisitor<Path> {
   @Override//from  w w  w  . j  av a  2s  .  c o m
   public FileVisitResult visitFile(Path file, BasicFileAttributes attributes) throws IOException {
      System.out.println("Deleting " + file.getFileName());
      Files.delete(file);
      return FileVisitResult.CONTINUE;
   }

   @Override
   public FileVisitResult postVisitDirectory(Path directory, IOException exception) throws IOException {
      if (exception == null) {
         System.out.println("Deleting " + directory.getFileName());
         Files.delete(directory);
         return FileVisitResult.CONTINUE;
      } else {
         throw exception;
      }
   }
}

public class Main {

   public static void main(String[] args) {
      try {
         Files.walkFileTree(Paths.get("/yourFolderToDelete"), new DeleteDirectory());
      } catch (IOException ex) {
         ex.printStackTrace();
      }
   }
}



PreviousNext

Related