我正在创建一个命令行实用程序,用于删除子目录/文件。如果文件正在使用中,则会抛出 System.IO.IOException
异常。我在 for 循环内部使用 try-catch 块。
问题:
1. 在 for 循环内部使用 try-catch 是不好的编程实践吗?
2. 如果是,有更好的替代方案吗?
我的代码:
System.IO.DirectoryInfo di = new DirectoryInfo(path);
foreach (FileInfo file in di.GetFiles())
{
try
{
file.Delete();
}
catch(System.IO.IOException)
{
Console.WriteLine("Please Close the following File {0}", file.Name);
}
}