最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用C#實現(xiàn)的自動清理過期文件的解決方案

 更新時間:2026年03月31日 08:45:26   作者:StevenChen85  
本文提供了一個用C#實現(xiàn)的自動清理過期文件的解決方案,代碼可刪除指定目錄中超過30天的文件,支持子目錄掃描,并包含完善的異常處理和日志記錄功能,需要的朋友可以參考下

需要用 C# 實現(xiàn)一個清理指定目錄(F:\OvlData\TestResult\Recipes\20\20251212143046),只保留最近 30 天文件,自動刪除過期文件 的方法。給你寫 完整可直接運行、健壯、帶日志、可復用 的代碼。

C# 實現(xiàn):保留 30 天內文件,自動刪除舊文件

功能說明

  • 傳入目錄路徑,自動掃描所有文件
  • 判斷文件最后寫入時間(最常用)
  • 超過 30 天的文件直接刪除
  • 支持子目錄(可選開關)
  • 帶異常處理 + 控制臺日志
  • 適配你的路徑:F:\OvlData\TestResult\Recipes\20\20251212143046

完整代碼(可直接復制運行)

using System;
using System.IO;
public class FileCleaner
{
    /// <summary>
    /// 清理目錄:保留最近30天的文件,刪除更早的文件
    /// </summary>
    /// <param name="targetDir">要清理的目錄</param>
    /// <param name="includeSubDir">是否包含子文件夾</param>
    public static void CleanFilesOlderThan30Days(string targetDir, bool includeSubDir = true)
    {
        try
        {
            // 1. 判斷目錄是否存在
            if (!Directory.Exists(targetDir))
            {
                Console.WriteLine($"目錄不存在:{targetDir}");
                return;
            }
            // 2. 計算30天前的時間點
            DateTime limitTime = DateTime.Now.AddDays(-30);
            Console.WriteLine($"保留【{limitTime:yyyy-MM-dd HH:mm:ss}】之后的文件");
            // 3. 獲取所有文件
            SearchOption searchOption = includeSubDir ? SearchOption.AllDirectories : SearchOption.TopDirectoryOnly;
            string[] files = Directory.GetFiles(targetDir, "*.*", searchOption);
            int deleteCount = 0;
            // 4. 遍歷刪除超過30天的文件
            foreach (string file in files)
            {
                try
                {
                    FileInfo fi = new FileInfo(file);
                    // 判斷:最后修改時間 是否早于30天前
                    if (fi.LastWriteTime < limitTime)
                    {
                        fi.Delete();
                        deleteCount++;
                        Console.WriteLine($"已刪除:{file}");
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"刪除失?。簕file},原因:{ex.Message}");
                }
            }
            Console.WriteLine($"\n清理完成!共刪除文件:{deleteCount} 個");
        }
        catch (Exception ex)
        {
            Console.WriteLine($"清理異常:{ex.Message}");
        }
    }
    // ==================== 調用示例 ====================
    public static void Main()
    {
        // 你的目標目錄
        string path = @"F:\OvlData\TestResult\Recipes\20\20251212143046";
        // 執(zhí)行清理(true = 包含子目錄)
        CleanFilesOlderThan30Days(path, true);
    }
}

使用說明(超級簡單)

  1. 直接復制代碼到你的項目
  2. 運行 Main() 即可自動清理
  3. 默認規(guī)則:
    • 最后修改時間 判斷
    • 保留 最近 30 天
    • 刪除 30 天以前 的所有文件
    • 包含子文件夾

可自定義選項

你可以輕松修改:

// 保留15天
DateTime.Now.AddDays(-15);
// 不清理子文件夾
CleanFilesOlderThan30Days(path, false);
// 按創(chuàng)建時間判斷(不常用)
if (fi.CreationTime < limitTime)

適合你的場景

  • 測試結果文件
  • 日志文件
  • 自動生成的報告
  • 定時清理目錄

總結

  • 代碼安全、帶異常處理,不會因為一個文件刪不掉就崩潰
  • 輸出日志清晰,方便你查看刪除了哪些
  • 完全適配你提供的路徑:F:\OvlData\TestResult\Recipes\20\20251212143046

以上就是使用C#實現(xiàn)的自動清理過期文件的解決方案的詳細內容,更多關于C#自動清理過期文件的資料請關注腳本之家其它相關文章!

相關文章

  • C#泛型集合Dictionary<K,V>的使用方法

    C#泛型集合Dictionary<K,V>的使用方法

    這篇文章主要介紹了C#泛型集合Dictionary<K,V>的使用方法,本文講解了Dictionary的多種操作方法,需要的朋友可以參考下
    2014-10-10
  • C#中Byte轉換相關的函數

    C#中Byte轉換相關的函數

    這篇文章主要介紹了C#中Byte轉換相關的函數介紹,非常具有參考借鑒價值,特此分享到腳本之家平臺供大家學習
    2016-05-05
  • c#的params參數使用示例

    c#的params參數使用示例

    這篇文章主要介紹了c#的params參數使用示例,需要的朋友可以參考下
    2014-04-04
  • C#對DataTable里數據排序的方法

    C#對DataTable里數據排序的方法

    在日常開發(fā)過程中,有一個DataTable集合,里面有很多字段,現(xiàn)在要求針對某一列進行排序,如果該列為數字的話,進行ASC即可實現(xiàn),但是該字段類型為string,此時排序就有點不正確了
    2013-11-11
  • C#創(chuàng)建自定義控件及添加自定義屬性和事件使用實例詳解

    C#創(chuàng)建自定義控件及添加自定義屬性和事件使用實例詳解

    這篇文章主要給大家介紹了關于C#創(chuàng)建自定義控件及添加自定義屬性和事件使用的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用C#具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2020-05-05
  • C# winform自定義翻頁控件詳解

    C# winform自定義翻頁控件詳解

    這篇文章主要為大家詳細介紹了C# winform自定義翻頁控件的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • c#調用jar包的方法步驟(非常詳細)

    c#調用jar包的方法步驟(非常詳細)

    這篇文章主要給大家介紹了關于c#調用jar包的方法步驟,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • C#實現(xiàn)快速將數據寫入Excel單元格

    C#實現(xiàn)快速將數據寫入Excel單元格

    這篇文章主要為大家詳細介紹了如何使用C#實現(xiàn)快速將數據寫入Excel單元格,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-03-03
  • C#函數式編程中的遞歸調用之尾遞歸詳解

    C#函數式編程中的遞歸調用之尾遞歸詳解

    這篇文章主要介紹了C#函數式編程中的遞歸調用詳解,本文講解了什么是尾遞歸、尾遞歸的多種方式、尾遞歸的代碼實例等內容,需要的朋友可以參考下
    2015-01-01
  • DevExpress中GridControl列轉義的實現(xiàn)方法

    DevExpress中GridControl列轉義的實現(xiàn)方法

    這篇文章主要介紹了DevExpress中GridControl列轉義的實現(xiàn)方法,在項目開發(fā)中有一定的實用價值,需要的朋友可以參考下
    2014-08-08

最新評論

五寨县| 双流县| 河南省| 沙洋县| 巴彦县| 巫山县| 滨海县| 湛江市| 前郭尔| 沁水县| 灯塔市| 闽侯县| 墨脱县| 高安市| 横山县| 赤城县| 河西区| 东明县| 宁津县| 庐江县| 章丘市| 伊金霍洛旗| 河曲县| 西乌| 凤翔县| 洪江市| 杭锦旗| 呼图壁县| 宜城市| 广水市| 澄江县| 荆州市| 扎鲁特旗| 仁寿县| 庆城县| 涞源县| 通海县| 舒城县| 丹东市| 息烽县| 锡林浩特市|