2011-05-10 94 views
-1

我想要一个程序来破坏文件。当我的应用程序访问directoryinfo.getfiles()时,它会收到一个异常,指出该文件已损坏或无法读取。c#程序破坏文件

我想要一个程序来破坏文件系统中的文件,以便我可以模拟异常。

任何想法/帮助将不胜感激。

拉朱

+3

请首先指定构成* valid *文件的内容。没有这些信息,我们无法确定如何*实际*损坏您的文件。 – 2011-05-10 14:29:45

+1

操作系统的异常是异常还是一些框架? – PedroC88 2011-05-10 14:31:19

+1

听起来像一个硬件问题,而不是软件问题。 – Tejs 2011-05-10 14:31:29

回答

1

只需复制已经导致异常的损坏文件。如果你真的想要,你可以将它嵌入为资源或其他东西,然后写出来。

出于好奇,当一个已经损坏的文件导致所述异常不会执行时,为什么你想要一个程序破坏文件以针对特定异常进行测试?

+0

这在客户所在地发生。我没有损坏的文件。 – user209293 2011-05-10 14:33:46

+0

在这种情况下,@Shane的答案和任何答案一样好。您可能只需在开始时编写随机字节,这可能比写入随机位置更容易。 – 2011-05-10 14:35:34

1

打开二进制文件,然后随机写入随机字节到它。

+0

上述建议破坏了文件。但它不会损坏文件系统中的文件相关数据。我在调用DirectoryInfo.getFiles时遇到异常。我认为当系统中存在文件损坏时,只有在调用directoryinfo.getfiles时才能得到异常。 – user209293 2011-05-10 18:00:14

+0

@ user209293那么我不知道。 – 2011-05-12 14:07:51

0

如果您覆盖文件的第一个或最后一个字节,它可能会被破坏,因为大多数文件格式在那里使用format information(ZIP和RAR使用文件结尾,因此将支持流式传输)。