我有一个包含数百个停用词的文件。我希望能够检查文件是否已被用户修改,或者即使文件已损坏。
我现在想的方法是查看行数是否正确。我还可以检查字符总数是否是预期的,或者甚至将整个停用词列表加载到内存中以检查它们中的每一个是否都在文件中。我想到的所有三种方式似乎效率低下和/或不好,所以我想问是否有更好的方法。
我正在考虑实施:
private static final int WORD_COUNT = 354;
public static boolean stopwordsCorrupted(File file) {
int numOfLines = countLines(file);
return WORD_COUNT != numOfLines;
}
答案 0 :(得分:1)
Java WatchService API可能对您的问题有帮助。
答案 1 :(得分:1)
看看这个:http://en.wikipedia.org/wiki/Checksum这会使用文件的散列函数来检查是否没有进行任何更改
Here您还有一个如何使用它的示例。