正如主题所说,这是我的代码。
public void deleteOldShit()
{
String path = textBox1.Text ;
Int32 days = Convert.ToInt32(oldRelease.Text);
Int32 neededSpace = Convert.ToInt32(discSpace.Text);
String[] folders = Directory.GetDirectories(path, "*".ToString(), SearchOption.AllDirectories);
foreach (String folder in folders)
{
DirectoryInfo source = new DirectoryInfo(folder);
String k = Directory.GetDirectoryRoot(path);
k = k.Replace(@":\", "");
DriveInfo c = new DriveInfo(k);
Double cAvailableSpace = c.AvailableFreeSpace / Math.Pow(1024, 2);
// Get info of each file into the directory
foreach (DirectoryInfo fi in source.GetDirectories())
{
var creationTime = fi.CreationTime;
if (creationTime < (DateTime.Now - new TimeSpan(days, 0, 0, 0)))
{
if (cAvailableSpace < neededSpace)
{
Directory.Delete(folder,true);
}
}
}
}
}
x天后一直在查看删除文件,但日期/时间的比较似乎是错误。
这里的任何指针都会很酷。我似乎找不到这个问题的答案。