Java tutorial
//package com.java2s; import java.io.File; import java.io.IOException; public class Main { private static void deleteOrThrow(File file) throws IOException { if (file.exists()) { boolean isDeleted = file.delete(); if (!isDeleted) { throw new IOException(String.format("File %s can't be deleted", file.getAbsolutePath())); } } } private static void delete(File file) throws IOException { if (file.isFile() && file.exists()) { deleteOrThrow(file); } else { cleanDirectory(file); deleteOrThrow(file); } } public static void cleanDirectory(File file) { if (!file.exists()) { return; } File[] contentFiles = file.listFiles(); if (contentFiles != null) { for (File contentFile : contentFiles) { try { delete(contentFile); } catch (IOException e) { e.printStackTrace(); } } } } }