##定时删除拜访图片
##cron表达式 秒 分 时 天 月 ?
##每月1日整点执行
CRON1=0 0 0 1 * ?
scheduled.enable1=false
##图片路径
filePath=E:\\FTP\\FtpS\\Vldata\\Vlbfile\\ /**删除3月前拜访图片**/
@Scheduled(cron="${CRON1}")
public void delImg(){
if(Boolean.parseBoolean(scheduled1)){ // String filePath ="E:\\FTP\\FtpS\\Vldata\\Vlbfile\\";
String filePath =path;
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.MONTH, -3);//减去三个月
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
long dateNowStr = Long.parseLong(sdf.format(calendar.getTime()));
int i=0;
// System.out.println("格式化:"+dateNowStr);
ArrayList<String> listFileName = new ArrayList<String>();
getAllFileName(filePath,listFileName);
for(String name:listFileName){
name=name.replace(filePath,"");
String str1 = null;
if(name.contains("vdvc80100")){ String str = name.substring(0,name.indexOf("80100_"));
str1 = name.substring(str.length()+6,str.length()+14);
}
// if(name.contains("vdvc80100")&&(Integer.valueOf(name.substring(10,18)))<dateNowStr){
if(name.contains("vdvc80100")&&(Integer.valueOf(str1))<dateNowStr){
File f = new File(filePath+name);
// System.out.println("图片路径"+filePath+name); f.delete();
// System.out.println("删除文件成功!"+f.getName());
}
}
// System.out.println("删除过期拜访图片数: "+i);
}else { System.out.println("文件删除定时器已关闭!");
}
}
/**
* 遍历获取文件夹下所有文件
* @param path
* @param listFileName
*/
public static void getAllFileName(String path,ArrayList<String> listFileName){
File file = new File(path);
File [] files = file.listFiles();
String [] names = file.list();
if(names != null){
String [] completNames = new String[names.length];
for(int i=0;i<names.length;i++){
completNames[i]=path+names[i];
}
listFileName.addAll(Arrays.asList(completNames));
}
for(File a:files){
if(a.isDirectory()){//如果文件夹下有子文件夹,获取子文件夹下的所有文件全路径。
getAllFileName(a.getAbsolutePath()+"\\",listFileName);
}
}
}

JAVA中删除文件夹下及其子文件夹下的某类文件的更多相关文章

  1. 文件夹中含有子文件夹,修改子文件夹中的图像存储格式(python实现)

    文件夹中含有子文件夹,修改子文件夹中的图像存储格式,把png图像改为jpg图像,python代码如下: import os import cv2 filePath = 'C:\\Users\\admi ...

  2. Android 读取手机某个文件夹目录及子文件夹中所有的txt文件

    1. activity_main.xml文件 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/andro ...

  3. asp.net 遍历文件夹下全部子文件夹并绑定到gridview上

    遍历文件夹下所有子文件夹,并且遍历配置文件某一节点中所有key,value并且绑定到GridView上 Helper app_Helper = new Helper(); DataSet ds = n ...

  4. Python扫描指定文件夹下(包含子文件夹)的文件

    扫描指定文件夹下的文件.或者匹配指定后缀和前缀的函数. 假设要扫描指定文件夹下的文件,包含子文件夹,调用scan_files("/export/home/test/") 假设要扫描 ...

  5. Matlab学习:读取指定文件夹及其五级子文件夹内的文件

    OpenCV2.4.X版本提供了三个函数来读取指定目录内的文件,它们分别是: (1)GetListFiles:读取指定目录内所有文件,不包含子目录: (2)GetListFilesR:读取指定目录及其 ...

  6. NSIS如何对一整个目录文件夹(包括子文件夹和其中的文件)压缩

    原来不加/r参数,NSIS编译器就会不认识文件夹啊. File /r [dir] Reference: http://stackoverflow.com/questions/7973242/nsis- ...

  7. python批量删除子文件夹中的空子文件夹

    例如A文件夹下有许多子文件夹,我需要获得的是子文件夹中的图片,但是现在子文件夹中不光有图片,还混入了空的文件夹(在使用OpenImages工具箱的时候,按照检索的方式下载的图片文件中是带有label的 ...

  8. Java 遍历指定文件夹及子文件夹下的文件

    Java 遍历指定文件夹及子文件夹下的文件 /** * 遍历指定文件夹及子文件夹下的文件 * * @author testcs_dn * @date 2014年12月12日下午2:33:49 * @p ...

  9. java 打印流 递归复制子文件子文件夹 不同编码文件复制到同一文件中 序列化流反序列化流

    package com.swift.jinjie; import java.io.BufferedInputStream; import java.io.File; import java.io.Fi ...

随机推荐

  1. GPRS DTU的工作原理和应用场景有哪些

    GPRS DTU是属于物联网无线数据终端设备的中一种,它主要是利用公用运营商的GPRS网络(又称G网)来为用户提供无线长距离数据传输的功能.一般都是采用的高性能工业级8/16/32位通信处理器和工业级 ...

  2. Java学习的第四十九天

    1.构造函数 import java.util.Scanner; public class Cjava { public static void main(String[]args) { Time t ...

  3. Jetbrains全系列产品 2020最新激活方法 (即时更新)

    即时更新:http://idea.itmatu.com/key Jetbrains全系列产品 2020最新激活方法 JMFL04QVQA-eyJsaWNlbnNlSWQiOiJKTUZMMDRRVlF ...

  4. [Luogu P1613]跑路 (DP+倍增+最短路)

    题面 传送门:https://www.luogu.org/problemnew/show/P1613 Solution 挺有意思的一道题. 题面已经挺明显的描述出了这题的主要思想:倍增. 先这样想,我 ...

  5. 【Jmeter】第一个接口测试案例

    测试步骤如下: 1.测试计划 2.线程组 3.HTTP Cookie管理器 4.Http信息头管理 5.Http请求默认值 6.Sampler(HTTP请求) 7.断言 8.监听器(查看结果树.图形结 ...

  6. python爬虫02通过 Fiddler 进行手机抓包

    我们要用到一款强大免费的抓包工具 Fiddler你可以到 https://www.telerik.com/download/fiddler去下载 一般情况下 我们通过浏览器来请求服务器的时候 是点对点 ...

  7. I am coming back

    时隔两年,我回来了,回到这个我梦开始的地方,带着一个新的身份--研究生!

  8. 交换机基于接口划分VLAN(汇聚层设备作为网关)

    组网图形 简介 划分VLAN的方式有:基于接口.基于MAC地址.基于IP子网.基于协议.基于策略(MAC地址.IP地址.接口).其中基于接口划分VLAN,是最简单,最常见的划分方式,如接入层设备作为网 ...

  9. project--客户信息管理系统

    软件设计分析 该软件有三个模块组成:Customer  CustomerList  CustomerView Customer 为实体对象,用来封装客户信息: CustomerList 为 Custo ...

  10. sqlserver with(NOLOCK) 或 with(READPAST)

    https://blog.csdn.net/shuicaohui5/article/details/6758868