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;
            }
        }
    
    }
  • 相关阅读:
    IDEA创建WEB项目部署详细步骤
    Java计算两个日期相差的天数
    使用Callable和Future创建线程
    Java使用POI导出Excel表格
    关于Intellij IDEA的使用小技巧
    python描述符
    登录百度下载博客
    WINDOWS下Mysql的安装
    迭代器就是重复地做一些事情,可以简单的理解为循环,在python中实现了__iter__方法的对象是可迭代的,实现了next()方法的对象是迭代器,这样说起来有
    Python札记 -- 装饰器
  • 原文地址:https://www.cnblogs.com/woshimrf/p/5802992.html
Copyright © 2011-2022 走看看