Multiple file-extensions searchPattern for System.IO.Directory.GetFiles

前端 未结 20 2581
名媛妹妹
名媛妹妹 2020-11-27 11:08

What is the syntax for setting multiple file-extensions as searchPattern on Directory.GetFiles()? For example filtering out files

20条回答
  •  陌清茗
    陌清茗 (楼主)
    2020-11-27 11:34

    I did a simple way for seach as many extensions as you need, and with no ToLower(), RegEx, foreach...

    List myExtensions = new List() { ".aspx", ".ascx", ".cs" }; // You can add as many extensions as you want.
    DirectoryInfo myFolder = new DirectoryInfo(@"C:\FolderFoo");
    SearchOption option = SearchOption.TopDirectoryOnly; // Use SearchOption.AllDirectories for seach in all subfolders.
    List myFiles = myFolder.EnumerateFiles("*.*", option)
        .Where(file => myExtensions
        .Any(e => String.Compare(file.Extension, e, CultureInfo.CurrentCulture, CompareOptions.IgnoreCase) == 0))
        .ToList();
    

    Working on .Net Standard 2.0.

提交回复
热议问题