c# 删除过期文件假及其子文件
时间: 2023-12-07 08:05:21 浏览: 74
C#删除过期文件
你可以使用递归方法来删除指定文件夹及其子文件夹中过期的文件。以下是一个示例代码:
```csharp
public static void DeleteExpiredFiles(string folderPath, int days)
{
DateTime expireDate = DateTime.Now.AddDays(-days); // 计算过期日期
// 获取文件夹中所有文件和子文件夹
string[] files = Directory.GetFiles(folderPath);
string[] subFolders = Directory.GetDirectories(folderPath);
foreach (string file in files)
{
DateTime lastModified = File.GetLastWriteTime(file); // 获取文件最近修改日期
// 如果文件最近修改日期早于过期日期,则删除文件
if (lastModified < expireDate)
{
File.Delete(file);
}
}
// 递归处理子文件夹
foreach (string subFolder in subFolders)
{
DeleteExpiredFiles(subFolder, days);
}
}
```
以上代码会递归遍历指定文件夹及其子文件夹,删除所有最近修改日期早于指定天数的文件。你可以通过调用 `DeleteExpiredFiles` 方法并传入文件夹路径和过期天数来实现该功能。例如:
```csharp
string folderPath = @"C:\MyFolder"; // 文件夹路径
int days = 30; // 文件过期的天数
DeleteExpiredFiles(folderPath, days);
```
注意这个方法会直接删除文件,谨慎使用。
阅读全文