Here you can find the source of deleteDirectory(File directory)
public static void deleteDirectory(File directory) throws IOException
//package com.java2s; /*//from w ww . ja v a 2 s.c o m * Copyright (c) 2002-2012 Alibaba Group Holding Limited. * All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import java.io.File; import java.io.IOException; public class Main { public static void deleteDirectory(String directory) throws IOException { deleteDirectory(new File(directory)); } public static void deleteDirectory(File directory) throws IOException { if (!directory.exists()) { return; } cleanDirectory(directory); if (!directory.delete()) { String message = "Directory " + directory + " unable to be deleted."; throw new IOException(message); } else { return; } } public static void cleanDirectory(String directory) throws IOException { cleanDirectory(new File(directory)); } public static void cleanDirectory(File directory) throws IOException { if (!directory.exists()) { String message = directory + " does not exist"; throw new IllegalArgumentException(message); } if (!directory.isDirectory()) { String message = directory + " is not a directory"; throw new IllegalArgumentException(message); } IOException exception = null; File[] files = directory.listFiles(); for (File file : files) { try { forceDelete(file); } catch (IOException ioe) { exception = ioe; } } if (null != exception) { throw exception; } else { return; } } public static void forceDelete(String file) throws IOException { forceDelete(new File(file)); } public static void forceDelete(File file) throws IOException { if (file.isDirectory()) { deleteDirectory(file); } else if (!file.delete()) { String message = "File " + file + " unable to be deleted."; throw new IOException(message); } } }