2010-01-11 62 views
0

是否可以在磁盘上创建文件?在全磁盘上创建文件

是否创建该文件需要任何空间?

基本上我看到一个C#已创建但未能写入任何我认为指向完整磁盘的情况。

有谁知道在整个磁盘上创建文件是否会失败?

这WA使用C#ØWindw xSerevr-日志文件做也写入相同的驱动

+0

我不知道你的问题的答案,但对于你的情况,是事先检查可用空间不是一个选项? – 2010-01-11 12:38:55

+1

@Pekka:预先检查空间*可能会在大多数情况下工作,但并不安全。这是例外的典型场景。如果在检查和实际的IO操作之间可用空间已被其他人占用,该怎么办? – 2010-01-11 12:46:13

回答

2

创建(空)文件应该还是有可能在大多数情况下。 MFT是卷的单独部分,不会用于文件数据。

甚至可以存储少量数据,而不需要MFT中的文件条目。 NTFS可以将流存储为流描述符"resident data",它不需要任何额外的空间,但只适用于非常小的文件。

但我认为你的问题是另一个问题。这可能是因为您有权创建文件,但不能写入任何内容。您可能需要检查您尝试编写的位置的ACL。

+2

MFT中的实际文件数据?从来不知道。似乎很奇怪:) – Thorarin 2010-01-11 12:40:14

+0

Thorarin:http://en.wikipedia.org/wiki/Ntfs#Resident_vs._non-resident_data_streams ...虽然有点不对劲。我会纠正的。 – Joey 2010-01-11 12:48:23

相关问题