原创

删除指定目录下超过7天的文件

温馨提示:
本文最后更新于 2022年12月16日,已超过 582 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

删除指定目录下超过7天的文件,包含目录下文件夹

 /**
     * @Description: 删除7天以前的文件 
     * @Author: http://365codemall.com/
     * @CreateDate: 2022/12/16 10:32
     * @UpdateUser:
     * @UpdateDate:
     * @UpdateReakem
     * @param filePath
     * @Return: boolean
     **/

    public static void delOutTimeFile(String filePath) {
        //计算时间
        long day = 7;
        long hour = 24;
        long minute = 60;
        long second = 60;
        long mmcond = 1000;
        try {
            File file = new File(filePath);
            if(file.exists()) { //文件或文件夹是否存在
                if(file.isDirectory()) { //判断是不是目录
                    //得到文件里面全部的文件及文件夹
                    File[] files = file.listFiles();
                    //遍历files里面的全部文件及文件夹

                    for(File f : files) {
                        //得到绝对路径下的文件及文件夹
                        if(f.isDirectory()){
                            delOutTimeFile(f.getAbsolutePath());
                        }else {
                            File absFile = f.getAbsoluteFile();
                            long currTime = System.currentTimeMillis(); //当前时间
                            long lastTime = absFile.lastModified(); //文件被最后一次修改的时间
                            //时间差
                            long diffen = currTime - lastTime;
                            // 定义指定天数删除时间
                            long thDay = day * hour * minute * second * mmcond;
                            if(diffen > thDay) {
                                absFile.delete();
                                log.info("删除文件:"+absFile.getName());
                            }
                        }
                    }
                    if(file.length() ==0){
                        file.delete();
                    }
                }else {
                    log.info("传入参数不是文件夹");
                }
            }else{
                log.info("文件路径不存在:"+filePath);
            }
        } catch (Exception e) {
           log.error("删除文件出错:"+e.getMessage());
        }

    }


正文到此结束
本文目录