要添加一个进度条来显示处理进度,可以使用 'ProgressBar' 控件。以下是修改后的代码,包括添加进度条的部分:

string[] files = Directory.GetFiles(remoteFolder, "*.LOG", SearchOption.AllDirectories);
string SN = textBox1.Text.Trim() + ".LOG";
List<string> matchingFiles = new List<string>();
List<string> matchingFolders = new List<string>();

DateTime currentDate = DateTime.Now;
DateTime startDate = currentDate.AddMonths(-1);

// 设置进度条的最大值为文件总数
progressBar1.Maximum = files.Length;

for (int i = 0; i < files.Length; i++)
{
    string file = files[i];
    DateTime lastModified = File.GetLastWriteTime(file);

    if (Path.GetFileName(file) == SN && lastModified >= startDate && lastModified <= currentDate)
    {
        matchingFiles.Add(Path.GetFileName(file));
        matchingFolders.Add(Path.GetDirectoryName(file));
    }

    // 更新进度条的值
    progressBar1.Value = i + 1;
}

 if (matchingFiles.Count > 0)
{
    label3.Text = string.Join(Environment.NewLine, matchingFiles);
    label4.Text = string.Join(Environment.NewLine, matchingFolders);
}
 else
{
    label3.Text = "LOG未检测到";
}

// 进度条完成后隐藏
progressBar1.Visible = false;

在这个修改后的代码中,我们首先设置了进度条的最大值为文件总数 'files.Length'。然后,在每次循环迭代时,我们使用 'progressBar1.Value' 属性来更新进度条的值,从而显示处理进度。最后,当处理完成后,我们将进度条隐藏起来。请确保在窗体上添加一个名为 'progressBar1' 的进度条控件,以便代码能够访问并操作它。

C# 代码优化:使用进度条提升文件处理效率

原文地址: https://www.cveoy.top/t/topic/izM 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录