Java 如何检查文件是否已在程序外修改?

Java 如何检查文件是否已在程序外修改?,java,file,io,sha1,md5sum,Java,File,Io,Sha1,Md5sum,我正在用Java编写一个基本的版本控制系统,我想知道如何检查程序外的文件更改。我目前已经确定应该为文件生成SHA-1或MD5散列,然后比较它们,但我不知道如何保存SHA-1,以便下次运行程序时可以进行比较 该程序的工作原理如下 java myProgram add FILENAME (only works if file has changed. Otherwise does nothing) 您可以持久化文件的MD5散列,稍后再检查是否有差异 为了在程序中保留一些内存,使您可以重新启动计算机

我正在用Java编写一个基本的版本控制系统,我想知道如何检查程序外的文件更改。我目前已经确定应该为文件生成SHA-1或MD5散列,然后比较它们,但我不知道如何保存SHA-1,以便下次运行程序时可以进行比较

该程序的工作原理如下

java myProgram add FILENAME (only works if file has changed. Otherwise does nothing)

您可以持久化文件的MD5散列,稍后再检查是否有差异

为了在程序中保留一些内存,使您可以重新启动计算机而不会丢失内存,您可以使用几种技术,最好的技术取决于您以后希望如何使用这些内存。 一些选择以及如何实施:

存储在一些txt文件->您可以使用->

存储在数据库->您可以使用->

序列化表示数据的对象->->


只需将MD5值写入文件。如何以及在何处这样做将取决于您希望如何管理它并将其保存在数据库中?属性文件?任何存储数据的东西?