我有一个静态文件夹路径,用于保存日志文件。我的问题是,如何定期以编程方式删除它们,而不是手动删除。
我更喜欢c#代码。
答案 0 :(得分:0)
try
{
if(File.Exists(filePath))
{
File.Delete(filePath);
}
}
catch{}
答案 1 :(得分:0)
基于之前的答案,这就是我提出的需求(大型IIS日志文件让我发疯!):
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace LogFileDeleter
{
class Program
{
static void Main(string[] args)
{
DirectoryInfo dir = new DirectoryInfo("c:\\inetpub\\logs\\logfiles\\w3svc1");
DateTime testDate = DateTime.Now.AddDays(-5);
foreach (FileInfo f in dir.GetFiles())
{
DateTime fileAge = f.LastWriteTime;
if (fileAge < testDate) {
Console.WriteLine("File " + f.Name + " is older than today, deleted...");
File.Delete(f.FullName);
}
//Console.ReadLine(); //Pause -- only needed in testing.
}
}
}
}
应该是显而易见的,但它只删除5天以上的文件,只在W3SVC1目录中删除。