Java Directory Clear cleanDirectory(File directory)

Here you can find the source of cleanDirectory(File directory)

Description

clean Directory

License

Apache License

Declaration

public static void cleanDirectory(File directory) throws IOException 

Method Source Code


//package com.java2s;
//License from project: Apache License 

import java.io.File;

import java.io.FileNotFoundException;

import java.io.IOException;

public class Main {
    public static void cleanDirectory(File directory) throws IOException {
        if (!directory.exists()) {
            String message = directory + " does not exist";
            throw new IllegalArgumentException(message);
        }//from  w w  w  . j ava 2s. c  o  m
        if (!directory.isDirectory()) {
            String message = directory + " is not a directory";
            throw new IllegalArgumentException(message);
        }
        File files[] = directory.listFiles();
        if (files == null)
            throw new IOException("Failed to list contents of " + directory);
        IOException exception = null;
        for (int i = 0; i < files.length; i++) {
            File file = files[i];
            try {
                forceDelete(file);
            } catch (IOException ioe) {
                exception = ioe;
            }
        }

        if (null != exception)
            throw exception;
        else
            return;
    }

    public static void forceDelete(File file) throws IOException {
        if (file.isDirectory()) {
            deleteDirectory(file);
        } else {
            if (!file.exists())
                throw new FileNotFoundException("File does not exist: " + file);
            if (!file.delete()) {
                String message = "Unable to delete file: " + file;
                throw new IOException(message);
            }
        }
    }

    public static void deleteDirectory(File directory) throws IOException {
        if (!directory.exists())
            return;
        cleanDirectory(directory);
        if (!directory.delete()) {
            String message = "Unable to delete directory " + directory + ".";
            throw new IOException(message);
        } else {
            return;
        }
    }
}

Related

  1. cleanDirectory(File directory)
  2. cleanDirectory(File directory)
  3. cleanDirectory(File directory)
  4. cleanDirectory(File directory)
  5. cleanDirectory(File directory)
  6. cleanDirectory(File path)
  7. cleanDirectory(final File directory)
  8. cleanDirectory(final File directory)
  9. cleanDirectory(IProgressMonitor monitor, File directory)