软件开发的时候,经常要写Log,不管写多少,日积月累,就会形成规模很大的log文件,如果不及时手动删除,甚至会挤爆硬盘,因此,有个自动安装日期删除文件的方法,显得非常重要。
方法如下:
1,开一个定时器扫描,可以1个小时或者更久;或者启动软件的时候检测一次;
private void TimerDelete_Tick(object sender, EventArgs e)
{
DeleteFile(ystem.Environment.CurrentDirectory + "\\Logs\\",7); //删除该目录下 超过 7天的文件
}
private void DeleteFile(string fileDirect,int saveDay)
{
DateTime nowTime = DateTime.Now;
string[] files = Directory.GetFiles(fileDirect, "*.txt", SearchOption.AllDirectories); //获取该目录下所有 .txt文件
foreach (string file in files)
{
FileInfo fileInfo = new FileInfo(file);
TimeSpan t = nowtime - fileInfo.CreationTime; //当前时间 减去 文件创建时间
int day = t.Days;
if (day > saveDay) //保存的时间 ; 单位:天
{
File.Delete(file); //删除超过时间的文件
}
}
}