本地文件超时删除
2023-02-26 12:27:08 时间
package com.dahe.mylibrary.utils;
import android.util.Log;
(福利推荐:阿里云、腾讯云、华为云服务器最新限时优惠活动,云服务器1核2G仅88元/年、2核4G仅698元/3年,点击这里立即抢购>>>)
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.List;
import static com.dahe.mylibrary.utils.CrashHandler.TAG;
public class FileUtil {
//移除文件,获取文件时间与当前时间对比,我这时间定位5天,删除五天前的文件 public static void removeFileByTime(String dirPath) { //获取目录下所有文件 List<File> allFile = getDirAllFile(new File(dirPath)); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //获取当前时间 Date end = new Date(System.currentTimeMillis()); try { end = dateFormat.parse(dateFormat.format(new Date(System.currentTimeMillis()))); } catch (Exception e){ Log.d(TAG, "dataformat exeption e " + e.toString()); } Log.d(TAG, "getNeedRemoveFile dirPath = " +dirPath); for (File file : allFile) {//ComDef try { //文件时间减去当前时间 Date start = dateFormat.parse(dateFormat.format(new Date(file.lastModified()))); long diff = end.getTime() - start.getTime();//这样得到的差值是微秒级别 long days = diff / (1000 * 60 * 60 * 24);
// if(ComDef.LOGMAXKEEPTIME <= days){
if(5 <= days){ deleteFile(file); } } catch (Exception e){ Log.d(TAG, "dataformat exeption e " + e.toString()); } } } //删除文件夹及文件夹下所有文件 public static void deleteFile(File file) { if (file.isDirectory()) { File[] files = file.listFiles(); for (int i = 0; i < files.length; i++) { File f = files[i]; deleteFile(f); } file.delete(); } else if (file.exists()) { file.delete(); } } //获取指定目录下一级文件 public static List<File> getDirAllFile(File file) { List<File> fileList = new ArrayList<>(); File[] fileArray = file.listFiles(); if(fileArray == null) return fileList; for (File f : fileArray) { fileList.add(f); } fileSortByTime(fileList); return fileList; } //对文件进行时间排序 public static void fileSortByTime(List<File> fileList) { Collections.sort(fileList, new Comparator<File>() { public int compare(File p1, File p2) { if (p1.lastModified() < p2.lastModified()) { return -1; } return 1; } }); }
}
你还在原价购买阿里云、腾讯云、华为云、天翼云产品?那就亏大啦!现在申请成为四大品牌云厂商VIP用户,可以3折优惠价购买云服务器等云产品,并且可享四大云服务商产品终身VIP优惠价,还等什么?赶紧点击下面对应链接免费申请VIP客户吧:
相关文章
- c++ primer读书笔记
- 分享 Github 上适合开发人员强大开源的速查手册
- js 数组去除重复数据-当WPS开始像支持VBA一样支持JS语言时,微软又该何去何从?
- linux安装mysql,远程使用navicat连接
- 前端Vue和React项目 Git 管理常用.gitignore配置
- Git 使用笔记
- c/s架构开发-C#下基于C/S架构的任务管理系统——开发安装
- pthread_create 线程属性-Linux学习——线程的创建和回收
- c++实现一个堆-包含插入删除获取
- Golang编译的二进制文件在alpine中无法运行
- C++如何简单快速去除容器中的重复元素
- 让devc++使用c++11标准
- git常用指令
- 纯C++实现字符版坦克大战
- c++中类的数据成员初始化次序
- 纯C++实现字符版推箱子
- git下载子模块失败问题解决办法
- 基于Jekyll与Github Pages搭建博客
- HTML5项目笔记3:使用Canvas设计离线系统的Logo
- linux系统开mc服务器