用于监视文本文件更改的Java代码

我需要编写一个java代码来检测对文本文件所做的更改,并且还通知在更改文本文件时对文本文件所做的更改(例如)如果在文本文件中将单词ABCD更改为BCDA,那么我需要通知ABCD已更改为BCDA。 你能告诉我是否可以使用java实现这一点(仅使用开源,没有付费或商业工具)

请参阅http://commons.apache.org/io/api-release/index.html?org/apache/commons/io/monitor/package-summary.html以获取可让您查看文件的开源库变化。

编辑:请注意,这将报告发生更改,但不会报告更改的特定行。 如果你想实时发生差异,你可能必须自己运行差异:我不确定是否存在任何预先包装的代码可以为你做差异。

对于更标准的解决方案,您还可以查看JSR 203 backport for Java 6 。 它提供File Scanner工具,与即将推出的Java运行时兼容。

听起来你想要运行实时差异。

跟踪文件的“旧”版本。 然后有一段代码每5分钟运行一次,或者你需要的细粒度。 使用您自己的方法或库方法在这两个文件之间运行差异(请参阅java-diff-utils )。