bool match = Regex.IsMatch(Path.GetFileName(Directory.GetFiles(string.Format(@"C:\apps\{0}\", app), "*.config").ToString()).ToLower(), "loggingconfiguration.config");
我一直在使用下面的代碼到CONFIGS放入一個列表,然後通過他們每個人的循環,看看他們的"loggingconfiguration.config"
或"*app*.config."
這工作不會有問題的文件名匹配,但我不知道這是處理這種情況的最佳方式。而不是將Directory.GetFiles()放入列表中,您可以搜索您需要的文件嗎?
List<string> configFiles = Directory.GetFiles(string.Format(@"C:\apps\{0}\", app), "*.config").ToList<string>();
foreach (var item in configFiles)
{
if (item.ToLower().Contains("loggingconfiguration.config") || (Path.GetFileName(item.ToLower()).Contains(app)))
{
//Do something
}
}
我想知道是否有通過搜索"loggingconfiguration.config"
或"\*app*.config"
先切出通過列表循環的步驟的方法。我試圖在`Path.GetFileName(Directory.GetFiles(string.Format(@「C:\ apps {0} \ app),」* .config「)搜索的system.string []中得到最高結果。
您可以使用LINQ的一行,但它仍然環路內部 – Jonesopolis