C#:我可以使用以下方法永久删除硬盘中的文件吗?

时间:2016-06-29 08:14:48

标签: c# .net file-io io

我不会发布代码或任何内容,因为我尚未启动此项目。但是理论上我可以使用这种方法安全地删除文件:

使用System.IO.File写入所有0个字节并替换当前文件中的字节(如果需要,甚至可以随机化字节)。

也许随机化文件属性以增加安全性

然后最后删除文件

现在,我明白即使使用这种方法,文件在技术上仍然会在删除后存储在内存中,但如果我覆盖文件中的所有字节并随机化属性,文件是否仍然可以恢复?

1 个答案:

答案 0 :(得分:0)

基本上你想要做的就是专业的橡皮擦工具(例如CCleaner)。然而,我说“专业”,因为永久删除文件并不容易,而且这些程序通常通过执行您提到的算法一定次数来执行此操作,通常最多10次。

然而,总有机会恢复文件,国家安全机构整天处理这个问题。所以没有100%安全的方法,但你可以肯定,经过几次迭代后它会变得非常难以恢复你的文件 - 甚至如果他们可能会恢复某些东西它不能保证是整个文件但只是一堆无序的字节。