zoukankan      html  css  js  c++  java
  • java删除文件夹

    想删除本地一个项目目录,结果windows说路径太长,不能删除。于是试了试java删除。一切ok。以后一定要抓紧时间学python。

    /**
     * Created by rmiao on 4/21/2016.
     */
    public class TestDel {
    
        public static void main(String[] args) throws IOException {
                String dest = "D:\perforce\workspace2\EPC";
                File file = new File(dest);
    
                forceDelete(file);
    
    
        }
    
        private static void forceDelete(File file) throws IOException {
            if (file.isDirectory()){
                deleteDirectory(file);
            }else{
                boolean filePresent = file.exists();
                if(!file.delete()){
                    if(!filePresent){
                        throw  new FileNotFoundException("File does note exist:"+file);
                    }
    
                    String message = "Unable to delete file:"+file;
                    throw new IOException(message);
    
                }else{
                    System.out.println("-"+file.getAbsolutePath());
                }
    
            }
        }
        public static void deleteDirectory(File directory) throws IOException{
            if (directory.exists()){
                cleanDirectory(directory);
            }
            if(!directory.delete()){
                String message = "Unable to delete directory "+directory+".";
                throw  new IOException(message);
            }
        }
    
        /**
         * Cleans a directory without deleting it.
         *
         * @param directory directory to clean
         * @throws IOException in case cleaning is unsuccessful
         */
        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);
            }
    
            File[] files = directory.listFiles();
            if (files == null) {  // null if security restricted
                throw new IOException("Failed to list contents of " + directory);
            }
    
            IOException exception = null;
            for (File file : files) {
                try {
                    forceDelete(file);
                } catch (IOException ioe) {
                    exception = ioe;
                }
            }
    
            if (null != exception) {
                throw exception;
            }
        }
    
    }
  • 相关阅读:
    Servlet3.0-使用注解定义Servlet
    poj 1256 Anagram—next_permutation的神奇应用
    poj 1664 放苹果 (划分数)
    poj 1011 Sticks
    poj和hdu部分基础算法分类及难度排序
    Notepad++支持jQuery、html5、css3
    Codeforces Round #395 (Div. 2) C. Timofey and a tree
    Codeforces Round #390 (Div. 2) D. Fedor and coupons
    bazel-编译动态库
    bazel-编译多目标
  • 原文地址:https://www.cnblogs.com/woshimrf/p/5802992.html
Copyright © 2011-2022 走看看