c# - 如何获取所有超过 N 分钟的文件?
问题描述
我必须从目录中获取所有超过 2 分钟的文件。
string sDir ="C:\\Test";
string[] files;
files = Directory.GetFiles(sDir, @"*.xml", SearchOption.TopDirectoryOnly);
我可以遍历 files 数组并获取 File 属性以获取文件创建时间。
FileInfo fi = new FileInfo(files);
但我想在GetFiles
级别上进行过滤。
解决方案
您可以尝试使用Linq来查询这些文件:
using System.IO;
using System.Linq;
...
DateTime limit = DateTime.Now.AddMinutes(-2);
var files = Directory
.EnumerateFiles(sDir, @"*.xml", SearchOption.TopDirectoryOnly)
.Where(file => new FileInfo(file).CreationTime < limit)
.ToArray(); // if you want an array of the files
推荐阅读
- python - "except Foo as bar" 导致 "bar" 从范围中删除
- deployd - 开发组是否仍在部署?
- docker - 自动将日志从 Docker 容器保存到文件
- python - Flask 请求返回 404 未找到
- r - 使用辅助 data.frame dplyr R 合并两个 data.frames
- angular - 如果绑定一个函数,ngStyle 会进入无限循环
- java - 如何在 java 中获取孟加拉塔卡符号“tk”或 Unicode 字符“৳”
- wordpress - 在 Woocommerce 的 add_order_note() 函数中添加自定义注释
- user-interface - 为什么导入Unity时模型会这么大?同样画布太大?
- javascript - 检查表单字段中的值