需求场景,服务器某个文件夹长期存放临时文件会导致占用磁盘,需要每次下载新的文件就把过期文件删除。
实现代码(可根据IO类:File,Directory获取文件时间 自行判断写入时间,读取时间,创建时间):
/// <summary>
/// 删除7天前文件内容
/// </summary>
/// <param name="Url"></param>
public static void DeleteSevenDaysBeforeFile(this string Url)
{
try
{
var Files = Directory.GetFiles(Url).Select(o=> new { LastWriteTime = Directory.GetLastWriteTime(o),Url = o }).ToList();
var SevenDaysFiles = Files.Where(d => d.LastWriteTime < DateTime.Now.AddDays(-7)).ToList();
foreach (var s in SevenDaysFiles)
{
File.Delete(s.Url);
}
}
catch (Exception ex)
{
}
}
过期文件集合:
过期文件.png
全部文件集合:
全部文件.png
下载路径调用:
下载路径调用.png
只是例子,细节不要太纠结。欢迎礼貌指点
网友评论