风中追雨 2015-10-24 03:39 采纳率: 100%
浏览 1656

c# 根据文件夹名称删除盘符下文件

e盘下有录像文件,每天新建一个文件夹,名称格式如下“yyyyMMdd”,
我想做个程序,根据当前时间判断文件名,删除三天前的文件夹,求大神帮忙!!新号没分,好人平安

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-04 13:32
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    这是一个简单的C#脚本,它将使用Windows API来删除指定日期范围内的所有文件。这个脚本需要管理员权限才能运行。

    using System;
    using System.IO;
    
    namespace DeleteOldFolders
    {
        class Program
        {
            static void Main(string[] args)
            {
                // 获取系统时间戳
                DateTime now = DateTime.Now;
                int daysAgo = 3; // 删除3天前的文件
    
                // 计算要删除的日期
                DateTime threeDaysAgo = now.AddDays(-daysAgo);
    
                string folderPath = @"E:\录像\yyyyMMdd"; // 要删除的文件夹路径
    
                // 创建文件夹对象
                DirectoryInfo directoryInfo = new DirectoryInfo(folderPath);
    
                // 遍历文件夹中的所有子文件和子文件夹
                foreach (FileInfo file in directoryInfo.GetFiles())
                {
                    if (file.LastWriteTime >= threeDaysAgo)
                        continue; // 如果文件创建于3天之前,则跳过
    
                    // 删除文件或文件夹
                    file.Delete();
                }
            }
        }
    }
    

    请注意,这个脚本可能不会删除所有在指定日期范围内创建的文件,因为它只能检查最后一个写入的时间,并且不能识别文件是否被其他应用程序修改了(例如,用户可能已经更改了文件内容)。如果你需要更精确地控制删除哪些文件,你可能需要使用更复杂的逻辑或者API来读取文件的属性。

    此外,这个脚本会直接覆盖掉目标文件夹里的文件,如果目标文件夹里有其他文件,它们可能会被覆盖。在实际应用中,你应该先备份源文件夹的内容,然后再执行此操作。

    评论

报告相同问题?

悬赏问题

  • ¥15 x趋于0时tanx-sinx极限可以拆开算吗
  • ¥500 把面具戴到人脸上,请大家贡献智慧
  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。
  • ¥15 各位 帮我看看如何写代码,打出来的图形要和如下图呈现的一样,急
  • ¥30 c#打开word开启修订并实时显示批注
  • ¥15 如何解决ldsc的这条报错/index error
  • ¥15 VS2022+WDK驱动开发环境
  • ¥30 关于#java#的问题,请各位专家解答!
  • ¥30 vue+element根据数据循环生成多个table,如何实现最后一列 平均分合并
  • ¥20 pcf8563时钟芯片不启振