代码如下:
//得到文件夹下符合条件的文件个数与大小
private void button1_Click(object sender, System.EventArgs e)
{
try
{
//得到路径
string pathtext=filepath.Text.Trim();
//得到时间
string filetime=dateTimePicker1.Value.ToShortDateString();
string filetimestr=filetime+" "+"00:00:00";
DateTime getFileTime=DateTime.Parse(filetimestr);
//得到的路径不能为空
if(pathtext==null||pathtext.Equals(""))
{
MessageBox.Show("路径不能为空","错误");
}
else
{
//得到文件名,目录
string[] filename=Directory.GetFiles(pathtext);
//初始化文件计数器
int a=0;
//初始化文件大小
long j=0;
//打开等待窗口
Sousuo ss=new Sousuo();
ss.Show();
//遍历文件夹
foreach(string file in filename)
{
//得到文件的创建时间
DateTime CreationTime=File.GetCreationTime(file);
//得到符合条件的文件,某个时间段之前的文件
if(getFileTime>CreationTime)
{
//得到文件的大小
FileInfo f=new FileInfo(file);
long len=f.Length;
j=j+len;
a++;
}
}
//关闭窗口
ss.Close();
num.Text=a.ToString();//输出个数
i=a;
long x=j/1024/1024;
filelen.Text=x.ToString();//得到大小
button2.Enabled=true;
MessageBox.Show("搜索完毕!","系统提示");
}
}
catch{
MessageBox.Show("请检查路径是否正确","系统提示");
}
//遍历文件夹,把符合条件的文件删除
//删除按钮 by www.jb200.com
private void button2_Click(object sender, System.EventArgs e)
{
if(MessageBox.Show("确实要删除该文件么?","系统提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question)==DialogResult.Yes)
{
//得到路径
string pathtext=filepath.Text.Trim();
//得到时间
string filetime=dateTimePicker1.Value.ToShortDateString();
string filetimestr=filetime+" "+"00:00:00";
DateTime getFileTime=DateTime.Parse(filetimestr);
//得到的路径不能为空
if(pathtext==null||pathtext.Equals(""))
{
MessageBox.Show("路径不能为空","错误");
}
else
{
//得到文件名,目录
string[] filename=Directory.GetFiles(pathtext);
//进度条显示,得到文件数量
progressBar1.Maximum=i;
progressBar1.Minimum=0;
//遍历文件夹
foreach(string file in filename)
{
//得到文件的创建时间
DateTime CreationTime=File.GetCreationTime(file);
//得到符合条件的文件
if(getFileTime>CreationTime)
{
//删除
File.Delete(file);
progressBar1.Step=10;
progressBar1.PerformStep();
}
}
MessageBox.Show("文件删除完毕!","系统提示");
}
}
else{
}
}