c# - C# 从具有特定 CreationTime 的目录中获取文件
问题描述
我正在编写一个短代码来将文件从一个目录移动到另一个目录。我的代码很简单,工作正常,看起来像这样:
public void copy()
{
string sourcePath = @"/Users/philip/Desktop/start";
string destinationPath = @"/Users/philip/Desktop/Ziel";
string[] files = Directory.GetFiles(sourcePath)
foreach (string s in files)
{
string fileName = System.IO.Path.GetFileName(s);
string destFile = System.IO.Path.Combine(destinationPath, fileName);
System.IO.File.Copy(s, destFile, true);
}
}
程序从源路径获取所有文件,并在 foreach 循环中将目标路径组合到每个文件中,包含目标路径和文件名。然后它移动它。一切正常。
我现在的目标是,不要将我目录中的所有文件都存储到字符串数组中。我只想获取 01.07.2021 之后具有 CreationTime 的文件。有没有简单快捷的方法来做到这一点?
我已经使用它来获取文件,但它指定了一个单一的日期,而不是特定日期之后的所有文件:
var files = Directory.GetFiles(sourcePath).Where(x => new FileInfo(x).CreationTime.Date == DateTime.Today.Date);
如果你能帮助我,我会很高兴。
最好的问候,利亚姆
解决方案
你可以使用FileInfo
FileInfo fileInfo = new(s);
if (fileInfo.CreationTime >= DateTime.Parse("01/07/2021"))
{
...
}
推荐阅读
- python - 生成了许多 CSV 文件(工作簿)。我希望它们作为单个 CSV 文件(在单个工作表中的一个工作簿下)。(在网络爬行中)
- docker - Setting boolean value in docker-compose.yaml using environment variable
- java - xmlx 和 MaxRAM JVM 参数有什么区别?
- javascript - 当文本框字段保持为空时,如何将文本框边框颜色突出显示为红色?
- javascript - Nodejs - 用单字标签替换所有双字标签
- c# - winforms - 两次显示相同的表格?
- javascript - 从 Gmail 获取电子邮件详细信息并保存到 Mysql 数据库
- python - 如何在 Tensorflow 中解析音频 Wav 文件
- android - 如何在应用程序被终止时处理 fcm 推送通知,而不使用 WakefulBroadcastReceiver 作为其在 26.1.0 中已弃用的?
- java - 如何从本地应用程序连接到远程配置单元?