我想验证Excel文档的内容是否未被更改。我正在考虑使用SHA哈希来做到这一点。但是,只需打开Excel文档的过程就会更改文件的SHA哈希值。
Excel 2011中的文件更改是什么?有没有办法防止这种情况发生?
答案 0 :(得分:1)
我刚刚对此进行了快速测试,如果您将文件设置为只读,则会或多或少地执行您想要的操作。
Create spreadsheet, save, set as read-only
Generate SHA-1 hash -> hash1
Open spreadsheet, edit, attempt save, receive warning about read-only copy, abort save, close without saving
Generate SHA-1 hash -> hash1 (i.e. same hash as before)
Turn off read-only flag, open, edit, save, undo edit, save, close
Generate SHA-1 hash -> hash2 (i.e. different hash from before)
因此,如果您将文件标记为只读,则应允许人们在不影响哈希的情况下查看该文件。如果他们关闭只读标志并打开它,即使他们没有做任何更改,哈希也会改变。