Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 是否可以恢复使用FileMode.Create或FileMode.Truncate打开的文件_C# - Fatal编程技术网

C# 是否可以恢复使用FileMode.Create或FileMode.Truncate打开的文件

C# 是否可以恢复使用FileMode.Create或FileMode.Truncate打开的文件,c#,C#,我们遇到了一些情况,一些重要的文件是使用FileMode.Create打开的,它本质上是FileMode.tranate,所有打开的文件长度都是0字节 System.IO.FileStream fs = new System.IO.FileStream(filepath, System.IO.FileMode.Create); 你认为如果这些文件上没有写任何东西,有可能恢复它们吗?我假设头是好的,数据也应该在那里的某个地方,但我对流如何写入磁盘知之甚少。当您有物理访问的硬盘上的文件时,您可以尝

我们遇到了一些情况,一些重要的文件是使用FileMode.Create打开的,它本质上是FileMode.tranate,所有打开的文件长度都是0字节

System.IO.FileStream fs = new System.IO.FileStream(filepath, System.IO.FileMode.Create);

你认为如果这些文件上没有写任何东西,有可能恢复它们吗?我假设头是好的,数据也应该在那里的某个地方,但我对流如何写入磁盘知之甚少。

当您有物理访问的硬盘上的文件时,您可以尝试使用该工具或类似工具。我在恢复删除的文件方面有很好的经验。不知道用文件覆盖时的情况。创建时,标题可能会被销毁。当文件在网络上时,请询问您的管理员。我们尝试了类似的工具,如Kroll Ontrack,但它没有找到文件。据推测,查找已删除的文件非常容易,因为它们并不是真正从磁盘上删除的,但当文件被认为被覆盖时,就像我们的情况一样,这些工具会失败。他们可能能够找到文件,但没有文件夹或名称,这使得它们非常有用,特别是如果有很多的话。我想,如果我知道文件被覆盖的确切方式,我也许能够以某种方式恢复它们。基本上,这些文件被删除,并被替换为同名的新文件。如果你删除了这些新文件,你的情况基本上和你从一开始就删除了原始文件一样。所以,基本上,祝你在其他无名文件中找到它们。如果没有向卷中写入任何其他内容(不仅仅是文件),则文件内容仍然可以恢复。将这些内容与原始文件名关联是另一回事。请从最近的备份还原。你确实备份了所有重要的文件,不是吗?当你把这些文件放在一个硬盘上,你可以通过物理方式访问时,你可以试试这个工具或类似的工具。我在恢复删除的文件方面有很好的经验。不知道用文件覆盖时的情况。创建时,标题可能会被销毁。当文件在网络上时,请询问您的管理员。我们尝试了类似的工具,如Kroll Ontrack,但它没有找到文件。据推测,查找已删除的文件非常容易,因为它们并不是真正从磁盘上删除的,但当文件被认为被覆盖时,就像我们的情况一样,这些工具会失败。他们可能能够找到文件,但没有文件夹或名称,这使得它们非常有用,特别是如果有很多的话。我想,如果我知道文件被覆盖的确切方式,我也许能够以某种方式恢复它们。基本上,这些文件被删除,并被替换为同名的新文件。如果你删除了这些新文件,你的情况基本上和你从一开始就删除了原始文件一样。所以,基本上,祝你在其他无名文件中找到它们。如果没有向卷中写入任何其他内容(不仅仅是文件),则文件内容仍然可以恢复。将这些内容与原始文件名关联是另一回事。请从最近的备份还原。你备份了所有重要的文件,不是吗?