我有这个功能,用于读取目录并获取具有特定搜索模式的文件。有没有办法根据创建日期或修改日期使用搜索模式?
public static List<FileInfo> GetFileList(string fileSearchPattern, string rootFolderPath)
{
DirectoryInfo rootDir = new DirectoryInfo(rootFolderPath);
List<DirectoryInfo> dirList = new List<DirectoryInfo>(
rootDir.GetDirectories("*", SearchOption.AllDirectories));
dirList.Add(rootDir);
List<FileInfo> fileList = new List<FileInfo>();
foreach (DirectoryInfo dir in dirList)
{
fileList.AddRange(
dir.GetFiles(fileSearchPattern, SearchOption.TopDirectoryOnly));
}
return fileList;
}
答案 0 :(得分:13)
不,但您可以使用Linq快速过滤它们;类似的东西:
var files = from c in directoryInfo.GetFiles()
where c.CreationTime >somedate
select c;
答案 1 :(得分:4)
这给了我上个月的文件,例如:
new DirectoryInfo("c:\\Aaron")
.EnumerateFileSystemInfos("*.*", SearchOption.AllDirectories)
.Where(file =>
file.CreationTime > DateTime.Now.AddMonths(-1));
答案 2 :(得分:0)
使用可以使用
System.Linq;
var files = directoryInfo.GetFiles().Where(a => a.CreationTime>yourDate).ToList();
这将为您提供一个列表集。