Java File Path Delete deleteDirectoryAndContents(final File srcPath)

Here you can find the source of deleteDirectoryAndContents(final File srcPath)

Description

This method deletes a given directory with its content.

License

Open Source License

Parameter

Parameter Description
srcPath a parameter

Return

true if successful false other wise.

Declaration

public static boolean deleteDirectoryAndContents(final File srcPath) 

Method Source Code

//package com.java2s;
/********************************************************************************* 
* Ephesoft is a Intelligent Document Capture and Mailroom Automation program 
* developed by Ephesoft, Inc. Copyright (C) 2015 Ephesoft Inc. 
* 
* This program is free software; you can redistribute it and/or modify it under 
* the terms of the GNU Affero General Public License version 3 as published by the 
* Free Software Foundation with the addition of the following permission added 
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK 
* IN WHICH THE COPYRIGHT IS OWNED BY EPHESOFT, EPHESOFT DISCLAIMS THE WARRANTY 
* OF NON INFRINGEMENT OF THIRD PARTY RIGHTS. 
* 
* This program is distributed in the hope that it will be useful, but WITHOUT 
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 
* FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more 
* details. /*from w  w w.  j  av a2  s. c  o m*/
* 
* You should have received a copy of the GNU Affero General Public License along with 
* this program; if not, see http://www.gnu.org/licenses or write to the Free 
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 
* 02110-1301 USA. 
* 
* You can contact Ephesoft, Inc. headquarters at 111 Academy Way, 
* Irvine, CA 92617, USA. or at email address info@ephesoft.com. 
* 
* The interactive user interfaces in modified source and object code versions 
* of this program must display Appropriate Legal Notices, as required under 
* Section 5 of the GNU Affero General Public License version 3. 
* 
* In accordance with Section 7(b) of the GNU Affero General Public License version 3, 
* these Appropriate Legal Notices must retain the display of the "Ephesoft" logo. 
* If the display of the logo is not reasonably feasible for 
* technical reasons, the Appropriate Legal Notices must display the words 
* "Powered by Ephesoft". 
********************************************************************************/

import java.io.File;

public class Main {
    /**
     * This method deletes a given directory with its content.
     * 
     * @param srcPath
     * @return true if successful false other wise.
     */
    public static boolean deleteDirectoryAndContents(final File srcPath) {

        final String files[] = srcPath.list();

        boolean folderDelete = true;

        if (files != null) {
            for (int index = 0; index < files.length; index++) {

                final String sFilePath = srcPath.getPath() + File.separator + files[index];
                final File fFilePath = new File(sFilePath);
                folderDelete = folderDelete & fFilePath.delete();
            }
        }
        folderDelete = folderDelete & srcPath.delete();
        return folderDelete;
    }

    /**
     * This method deletes a given directory with its content.
     * 
     * @param srcPath
     * @return true if successful false other wise.
     */
    public static boolean deleteDirectoryAndContents(final String sSrcPath) {
        return deleteContents(sSrcPath, true);
    }

    /**
     * This method deletes a given directory with its content.
     * 
     * @param srcPath
     * @return true if successful false other wise.
     */
    public static boolean deleteContents(final String sSrcPath, final boolean folderDelete) {
        final File srcPath = new File(sSrcPath);
        boolean returnVal = folderDelete;
        if (null == srcPath || !srcPath.exists()) {
            returnVal = false;
        } else {
            final String files[] = srcPath.list();
            if (files != null) {
                for (int index = 0; index < files.length; index++) {
                    final String sFilePath = srcPath.getPath() + File.separator + files[index];
                    final File fFilePath = new File(sFilePath);
                    returnVal = returnVal & fFilePath.delete();
                }
                returnVal = returnVal & srcPath.delete();
            }
        }
        return returnVal;
    }
}

Related

  1. deleteDirectory(String path)
  2. deleteDirectory(String path)
  3. deleteDirectory(String path)
  4. deleteDirectory(String path)
  5. deleteDirectory(String sPath)
  6. deleteDirectoryAndContentsRecursive(final File srcPath, final boolean deleteSrcDir)
  7. deleteDirectoryContents(File path)
  8. deleteDirectoryContents(String directoryPath, boolean deleteChildDirectories)
  9. deleteDirectoryIncludeContent(String folderPath)