如何从Windows检测对文件的更改?
我希望跟踪目录中文件的更改,并在更改时通知web服务 在Mac电脑上,我知道我可以做出反应,比如创建、修改等等 在Windows中执行此操作的最佳方法是什么? 你建议用哪种语言?(我将为它构建一个基本的UI)。本机(C++/C)API是。在.Net(C#等)中,这是封装在类中的。C#更易于编程,该URL中有一些示例代码如何从Windows检测对文件的更改?,windows,Windows,我希望跟踪目录中文件的更改,并在更改时通知web服务 在Mac电脑上,我知道我可以做出反应,比如创建、修改等等 在Windows中执行此操作的最佳方法是什么? 你建议用哪种语言?(我将为它构建一个基本的UI)。本机(C++/C)API是。在.Net(C#等)中,这是封装在类中的。C#更易于编程,该URL中有一些示例代码 这些API都会偶尔发生遗漏事件。我知道没有解决这个问题的办法,没有任何简单的选择。如果您的目录没有经常更改,它可能会对您正常工作。C#有一个类System.IO.FileSyst
这些API都会偶尔发生遗漏事件。我知道没有解决这个问题的办法,没有任何简单的选择。如果您的目录没有经常更改,它可能会对您正常工作。C#有一个类
System.IO.FileSystemWatcher
,它可能会执行您想要的操作。更多细节。对于C++,参见.p/> java,可以使用<强>监视服务< /强>来检测特定文件或目录中发生的事件类型。
实现很简单,因为您只需从文件系统获取WatchService,如下所示:
1-获取WatchService:WatchService WatchService=FileSystems.getDefault().newWatchService()
2-使用文件中的WatchService:
文件位置。注册(watchService、StandardWatchEventTypes.条目修改、StandardWatchEventTypes.条目删除、StandardWatchEventTypes.条目创建)
毕竟,您可以看到文件中发生的所有类型的事件,如上图所示:StandardWatchEventKinds.ENTRY\u MODIFY,这意味着您的文件已被修改
有关更多详细信息,请查看以下链接:
谢谢你的回答,克里斯,以及对另一个问题的提及。