Java Recursive Delete recursiveDelete(File file)

Here you can find the source of recursiveDelete(File file)

Description

Attempt to recursively delete the specified file or folder.

License

CDDL license

Parameter

Parameter Description
file a file representing the File or Folder to delete

Return

true if all files/folders have been deleted, false if only partial removal occurred

Declaration

public static boolean recursiveDelete(File file) 

Method Source Code

//package com.java2s;
/*/*from   w w  w .  ja  v  a 2 s. co  m*/
 * File: FileHelper.java
 *
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
 *
 * The contents of this file are subject to the terms and conditions of 
 * the Common Development and Distribution License 1.0 (the "License").
 *
 * You may not use this file except in compliance with the License.
 *
 * You can obtain a copy of the License by consulting the LICENSE.txt file
 * distributed with this file, or by consulting https://oss.oracle.com/licenses/CDDL
 *
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing the software, include this License Header Notice in each
 * file and include the License file LICENSE.txt.
 *
 * MODIFICATIONS:
 * If applicable, add the following below the License Header, with the fields
 * enclosed by brackets [] replaced by your own identifying information:
 * "Portions Copyright [year] [name of copyright owner]"
 */

import java.io.File;

public class Main {
    /**
     * Attempt to recursively delete the specified file or folder.
     *
     * @param file  a file representing the File or Folder to delete
     *
     * @return true if all files/folders have been deleted, false if only
     *         partial removal occurred
     */
    public static boolean recursiveDelete(File file) {
        if (file != null && file.exists()) {
            if (file.isDirectory()) {
                for (File child : file.listFiles()) {
                    if (!recursiveDelete(child)) {
                        return false;
                    }
                }
            }

            return file.delete();
        } else {
            return true;
        }
    }
}

Related

  1. recursiveDelete(File f)
  2. recursiveDelete(File file)
  3. recursiveDelete(File file)
  4. recursiveDelete(File file)
  5. recursiveDelete(File file)
  6. recursiveDelete(File file)
  7. recursiveDelete(File file)
  8. recursiveDelete(File file)
  9. recursiveDelete(File file)