我正在尝试检查是否所有必需的子目录都存在,并为此使用以下代码段:
DirectoryInfo gccdir = new DirectoryInfo(txtgccPath.Text);
List<string> subdirectories = new List<string>();
foreach (var item in gccdir.GetDirectories())
{
subdirectories.Add(item.Name);
}
if (subdirectories.Contains("bin") &&
subdirectories.Contains("i686-w64-mingw32") &&
subdirectories.Contains("include") &&
subdirectories.Contains("lib") &&
subdirectories.Contains("libexec") &&
subdirectories.Contains("share"))
{
//statements
}
有什么更好的方法吗?
在这种情况下,需要验证多个条件,如何避免if else语句过度使用的最佳方法是什么?
最佳答案
你可以喜欢
if(new[] {"bin", "include", "lib"}.All(subdirectories.Contains))
{
}
等等
关于c# - 有没有比使用嵌套的ifs更好的方法来检查C#中几个子目录的存在?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17594153/