【发布时间】:2016-11-09 00:34:02
【问题描述】:
我需要监控一个文件夹,查看一个或多个文件是否已上传。然后我需要获取已上传的最新文件的创建日期和时间,并查看文件的创建时间是否距离当前时间超过 30 分钟。我已经使用 FileSystemWatcher 来监视文件夹,但是我应该如何继续查找最新文件并将其与当前时间进行比较。
private void watch()
{
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = path;
watcher.NotifyFilter = NotifyFilters.LastWrite;
NotifyFilters.DirectoryName;
watcher.Filter = "*.*";
watcher.Changed += new FileSystemEventHandler(OnChanged);
watcher.EnableRaisingEvents = true;
}
Private void OnChanged(object source, FileSystemEventArgs e)
{
//Copies file to another directory.
}
我应该如何在 c# 中做到这一点。请帮忙!
【问题讨论】:
-
在
FileSystemEventArgsmsdn.microsoft.com/en-us/library/… 上寻求帮助 -
但是
OnChanged会在文件创建(上传)后触发 => 创建时间将为Now。您的意思是要检查上传过程是否超过 30 分钟?或者你到底在追求什么? -
@user3185569 实际上,我计划将代码作为计划任务运行,每 1 小时运行一次。所以我期待它然后查看文件夹中创建的最新文件是否已创建超过 30 分钟。
-
这个答案的问题没有帮助吗? stackoverflow.com/a/15018082/868127
-
@claudekennilol 是的,但只是部分。我如何检查文件夹中创建的最新文件并比较创建的时间是从现在开始超过 30 分钟。
标签: c# directory filesystemwatcher datecreated