C# 定时清理文件夹中的图片

` static void deleteImageFolder(string targetDirectory)
{
// 定义允许的图片扩展名(不区分大小写)
string[] allowedExtensions = {
".jpg", ".jpeg", ".png", ".gif",
".bmp", ".webp", ".tiff", ".svg"
};

    // 计算三个月前的日期
    DateTime cutoffDate = DateTime.Now.AddMonths(-2);

    try
    {
        // 验证目录是否存在
        if (!Directory.Exists(targetDirectory))
        {
            Console.WriteLine("目标目录不存在");
            return;
        }

        // 遍历所有文件
        foreach(string folder in Directory.GetDirectories(targetDirectory))
        {
            foreach (string filePath in Directory.GetFiles(folder, "*.*", System.IO.SearchOption.AllDirectories))
            {
                // 获取文件扩展名并转为小写
                string extension = Path.GetExtension(filePath)?.ToLower();

                // 检查是否是允许的图片类型
                if (allowedExtensions.Contains(extension))
                {
                    // 获取文件最后修改时间
                    DateTime lastWriteTime = File.GetLastWriteTime(filePath);

                    // 判断是否早于三个月前
                    if (lastWriteTime < cutoffDate)
                    {
                        try
                        {
                            File.Delete(filePath);
                            Console.WriteLine($"已删除: {filePath}");
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine($"删除失败 {filePath}: {ex.Message}");
                        }
                    }
                }
            }
            DirectoryInfo di = new DirectoryInfo(folder);
            di.Delete(true);
        }
        Console.WriteLine("清理完成!");
    }
    catch (Exception ex)
    {
        Console.WriteLine($"发生错误: {ex.Message}");
    }
}

`
new Task( () => {

        while(true)
        {
            Thread.Sleep(1000 * 50);

            if (7 == DateTime.Now.Hour && 59 == DateTime.Now.Month)
            {
                string targetDirectory = @"D:\Image";
                ImageCleaner.deleteImageFolder(targetDirectory);
            }
        }
    }).Start();

`

posted @ 2025-05-23 14:16  郭好好GH  阅读(79)  评论(0)    收藏  举报