目录中.GetFiles使用fileppattern获取多个文件

本文关键字:获取 文件 fileppattern 使用 GetFiles | 更新日期: 2023-09-27 17:51:13

我如何设置模式返回多个文件,但只有这样,我正在寻找。

我有一个包含文件的目录:

marks v1.csv,
marks_east.csv
marks.csv
marks_west.csv
marks23.csv
marks24.csv

我需要marks.csv, marks_east.csv, marks_west.csv使用filePattern .

早先我使用确切的文件名,因为我只对一个文件感兴趣。现在我想通过修改filePattern来重用相同的过程。

var files = Directory.GetFiles(sourceDirectory, filePattern).OrderBy(d => new FileInfo(d).CreationTime);

目录中.GetFiles使用fileppattern获取多个文件

目录。GetFiles支持通配符。

var files = Directory.GetFiles(sourceDirectory, "marks_*.csv").OrderBy(d => new FileInfo(d).CreationTime);

这不会捕获marks.csv。Regex将非常适合于此,但遗憾的是,GetFiles函数不支持正则表达式。一个快速(有点俗气)的解决方案是:

var files = Directory.GetFiles(sourceDirectory, "marks_*.csv");
if (File.Exists(sourceDirectory+"marks.csv"))
    files.Insert(0, "marks.csv");
files.OrderBy(d => new FileInfo(d).CreationTime);