Java Delete File Recursively deleteRecursively(File fileToDelete)

Here you can find the source of deleteRecursively(File fileToDelete)

Description

Delete a directory recursively

License

Apache License

Parameter

Parameter Description
fileToDelete a parameter

Declaration

public static boolean deleteRecursively(File fileToDelete) 

Method Source Code

//package com.java2s;
/*/*  w  w  w .j a va 2  s.c  om*/
 * Copyright  2001-2005 The Apache Software Foundation
 *
 *  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;

public class Main {
    /**
     * Delete a directory recursively
     *
     * @param fileToDelete
     */
    public static boolean deleteRecursively(File fileToDelete) {
        boolean retval = true;
        if (fileToDelete.isDirectory()) {
            for (File fileInDir : fileToDelete.listFiles()) {
                retval &= deleteRecursively(fileInDir);
            }
        }
        retval &= fileToDelete.delete();
        return retval;
    }

    /**
     * Delete the file with {@link File#delete()} if the argument is not null.
     * Do nothing on a null argument.
     *
     * @param file file to delete.
     */
    public static void delete(File file) {
        if (file != null) {
            file.delete();
        }
    }
}

Related

  1. deleteRecursively(File file)
  2. deleteRecursively(File file)
  3. deleteRecursively(File fileEntry)
  4. deleteRecursively(File fileOrDir)
  5. deleteRecursively(File fileOrDir)
  6. deleteRecursively(File fRoot)
  7. deleteRecursively(File name)
  8. deleteRecursively(File root)
  9. deleteRecursively(File root)