Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从特定目录的列表中选择文件_C#_List_Directory_Getfiles - Fatal编程技术网

C# 如何从特定目录的列表中选择文件

C# 如何从特定目录的列表中选择文件,c#,list,directory,getfiles,C#,List,Directory,Getfiles,我知道我可以用 Directory.GetFiles(sourceDirectory, pattern); 以获取具有特定模式的所有文件。然而,我好奇的是,如何才能以相同的模式只获取所需的文件(即从某种列表中获取文件?不要认为你可以直接从GetFiles中获取文件,但你肯定可以过滤它们 private static string[] GetFiles(string sourceFolder, string filters, System.IO.SearchOption searchOptio

我知道我可以用

 Directory.GetFiles(sourceDirectory, pattern);

以获取具有特定模式的所有文件。然而,我好奇的是,如何才能以相同的模式只获取所需的文件(即从某种列表中获取文件?

不要认为你可以直接从GetFiles中获取文件,但你肯定可以过滤它们

private static string[] GetFiles(string sourceFolder, string filters, System.IO.SearchOption searchOption, List<string> fileNames )
        {
            return System.IO.Directory.GetFiles(sourceFolder, filters, searchOption).Where(fileNames.Contains).ToArray();
        }
private static string[]GetFiles(string sourceFolder、字符串过滤器、System.IO.SearchOption SearchOption、列表文件名)
{
返回System.IO.Directory.GetFiles(sourceFolder,filters,searchOption).Where(fileNames.Contains).ToArray();
}

可能重复的我不是真的在寻找过滤器,比如说。我将寻找如下内容:Directory.GetFiles(sourceDirectory、pattern、listoffiletofind);我终于找到了一种使用GetFiles的方法,但只使用SelectMany使用Lambda表达式
string[] filePaths = filesToReturn.SelectMany(f => Directory.GetFiles(sourceDirectory, f)).ToArray();