如果我要给你一个文件。您可以阅读该文件,但无法对其进行更改或复制。然后我拿起文件,重命名,移动到一个新的位置。你怎么能识别那个文件? (相当可靠)
我正在查看我是否有一个程序的媒体文件数据库,并且用户改变了文件的位置/名称,我是否可以通过搜索目录并查找内容来找到该文件。
答案 0 :(得分:1)
我做到了这一点,并不难。
我采用256位哈希(我忘记了我在脑海中使用的那个例程)和文件大小并将其写入表中。如果匹配文件匹配。 (我认为跟踪大小比必要性更偏执。)为了加快速度,我还将该哈希值折叠为32位值。如果32位值匹配,那么我检查所有数据。
为了表现,我坚持了我检查的最后1000万个文件。 32位值放在一个文件中,完整地读取,当需要检查主记录时,我拉入一个“页面”(我忘了它们究竟有多大),它们被填充以与磁盘对齐。