C#winform定时器timer删除过期文件/文件夹

privatevoidtimer1_Tick(object sender, EventArgs e) //每隔一段时间触发该函数。

{

DeleteFile("D:/test",7);//删除该目录下 超过 7天的文件

DeleteDirectory("D:/test",7)//删除目录下超过7天的文件夹

}

privatevoidDeleteFile(stringfileDirect,int saveDay)

{

DateTime nowTime = DateTime.Now;

string[] files = Directory.GetFiles(fileDirect,"*.*", SearchOption.AllDirectories);//获取该目录下所有文件 foreach(stringfilein files)

{

FileInfo fileInfo =new FileInfo(file);

TimeSpan t = nowTime - fileInfo.CreationTime;//当前时间 减去 文件创建时间

intday = t.Days;

if(day > saveDay)//保存的时间 ; 单位:天

{

File.Delete(file);//删除超过时间的文件

}

}

}

private void DeleteDirectory(string fileDirect, int saveDay)

{

DateTime nowTime = DateTime.Now;

DirectoryInfo root = new DirectoryInfo(fileDirect);

DirectoryInfo[] dics = root.GetDirectories();//获取文件夹

FileAttributes attr = File.GetAttributes(fileDirect);

if (attr == FileAttributes.Directory)//判断是不是文件夹

{

foreach (DirectoryInfo file in dics)//遍历文件夹

{

TimeSpan t = nowTime - file.CreationTime; //当前时间 减去 文件创建时间

int day = t.Days;

if (day > saveDay) //保存的时间 ; 单位:天

{

Directory.Delete(file.FullName, true); //删除超过时间的文件夹

}

}

}

}


版权声明:本文为m0_65940985原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。