フォルダとサブフォルダ内のすべてのファイルをスキャンするにはどうすればよいですか?
これが私が持っているコードです:
private void button1_Click(object sender, EventArgs e)
{
folderBrowserDialog1.ShowDialog();
label2.Text = folderBrowserDialog1.SelectedPath;
viruses = 0;
progressBar1.Value = 0;
label1.Text+= viruses.ToString();
listBox1.Items.Clear();
}
private void btnScan_Click_1(object sender, EventArgs e)
{
List<string> search = Directory.GetFiles(folderBrowserDialog1.SelectedPath, "*.*").ToList();
progressBar1.Maximum = search.Count;
//foreach (Directory.GetDirectories.search))
foreach(string item in search)
{
try
{
StreamReader stream = new StreamReader(item);
string read = stream.ReadToEnd();
foreach(string st in viruslist)
{
if(Regex.IsMatch(read,st));
{
viruses+=1;
label1.Text+= listBox1.Items.Count;
listBox1.Items.Add(item);
}
progressBar1.Increment(1);
}
}
catch(Exception ex)
{
}
}
}
このコードは、ルートフォルダー内のすべてのファイルのみをスキャンしますが、サブフォルダー内はスキャンしません。このコードを変更して、フォルダーとサブフォルダー内のすべてのファイルもスキャンできるようにするにはどうすればよいですか?