【发布时间】:2017-12-19 02:01:02
【问题描述】:
我需要在 C# 中创建一个侦听器,该侦听器将监视共享文件夹(UNC 路径)并在到达时将具有特定扩展名 (*.json) 的文件复制到目标文件夹。这些文件可以延迟大约半分钟。 文件夹永远不会为空。
问题:
文件将到达新的子文件夹,FileSystemWatcher 无法使用,因为它无法监听共享文件夹中的子文件夹。
文件需要复制并留在文件夹中,因此我们需要确保同一个文件不会被复制多次。
编辑/更新的文件需要再次复制并覆盖在目标文件夹中。
其他文件将在文件夹中,并且将到达我们需要忽略的新文件(没有正确的扩展名)。
我想过轮询文件夹,但我没有想出一个好的实现。
我很确定我不能使用 FilesystemWatcher 对象,但也许有人可以找到使用它的智能解决方案。
【问题讨论】:
-
我见过他们,但不喜欢这些解决方案。我正在寻找没有 FileSystemWatcher 的解决方案...
-
如果没有
FileSystemWatcher,轮询特定文件或新文件将是您唯一的选择。您需要找到一个对您的应用程序有足够响应性的速率,但又不足以使您的文件服务器和网络陷入瘫痪。
标签: c# listener polling filesystemwatcher