gpt4 book ai didi

c# - 在 Compact Framework 中安全删除文件

转载 作者:行者123 更新时间:2023-11-30 18:08:23 26 4
gpt4 key购买 nike

给定一个字符串的路径,我想清除一个文件的内容。我认为(可能不正确)的自然方式是打开文件的 FileStream 并向其写入乱码(可能是从 RNGCryptoServiceProvider 获取的随机数据)。然后可能会这样做几次,然后删除该文件。

我的问题是,虽然这在逻辑上看起来是正确的,但我在另一个博客上读到 Windows 可能实际上选择将文件写入硬盘中的其他位置。

在 Windows Mobile 中也是如此吗?这真的会成为问题吗?这种写入硬盘中不同位置的操作是否适用于基于闪存(SD 等)的卡?

最佳答案

我个人没有这样做,但您可能需要使用低级 FLASH 驱动程序 IOCTL 才能正确执行此操作。

http://msdn.microsoft.com/en-us/library/aa927166.aspx

我认为IOCTL_FMD_RAW_WRITE_BLOCKS看起来特别有用。

-保罗


另一种可行的方法是正常删除文件,然后使用碎片整理 API 删除闪存上的所有可用空间。由于您正在删除所有内容,因此没有必要确切知道您的文件在磁盘上的位置。但是,这会更快地磨损您的闪存驱动器。此博客文章中详细介绍了 C# 方法:http://blogs.msdn.com/b/jeffrey_wall/archive/2004/09/13/229137.aspx

关于c# - 在 Compact Framework 中安全删除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3275147/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com