现状:是否有更好的方法来覆盖文件,然后检查更改(在C#中)?
我有一个C#程序,它具有以下功能:
- 生成许多文件(更换产生最后一次程序运行起来的人。)
- 阅读这些文件并执行耗时的计算。
问题:
我只想执行上,因为我最后一次运行该程序实际上已更改的文件耗时的计算。
解决方案1:
- 重命名旧文件。
- 写入新文件。
- 阅读并比较两个文件。
这涉及到写入一个文件和读取两个文件,这看起来好像比需要更多的磁盘访问。
解决方案2:
- 写入字符串,而不是一个文件。
- 读取旧文件并与字符串进行比较。
- 如果它们不同,请覆盖旧文件。
这将涉及阅读一个文件,并可能写一个文件,这似乎是对我的第一个想法的重大改进。
问:
你能描述一个更好的办法来解决我的问题? (并解释为什么它更好?)
谢谢,这是我的问题的有效解决方案。将所有校验和保存在一个文件中以便可以按顺序读取会更好吗? – 2009-11-24 22:08:05
MD5散列可以说在文件名中是正确的。 – 2009-11-24 22:10:50
@Paul - 我的选择是将它们附加到文件中,因为它们不太可能会失步,但将它们保存在单独的文件中没有任何问题。 – ChrisF 2009-11-24 22:11:53