所以在Visual Studio中,我有一个简单的fileStream看起来像这样:
using (FileStream stream = new FileStream(Filename,FileMode.Append,FileAccess.Write))
{
long fourgigs = 1073741824L * 4;
for (int y = 0; y < fourgigs; y++)
{
byte[] b = { 1 };
stream.Write(b, 0, b.Length);
}
}
我将其限制为向文件写入4 GB,因为一旦文件超过4 GB,我会收到一条错误消息,提示“磁盘上没有足够的空间”。所以我只是想知道这是对FileStream的限制,还是因为我正在写入文本文件?
为澄清起见,磁盘没有足够的空间,该磁盘有数百个演出。谢谢。
edit:所以我做了一些实验,最初我是想写到USB驱动器,而是决定写到普通硬盘上。有趣的是,我的普通硬盘驱动器可以写入超过4GB的数据,而USB则不能。我仍然不确定为什么会这样。有人知道这是为什么吗?
答案 0 :(得分:1)
您注意到这适用于本地磁盘,但不适用于USB驱动器。
最可能的原因是您的USB驱动器被格式化为FAT32或类似格式。该文件系统无法处理大于4GB的文件