所以在 Visual Studio 中我有一个简单的文件流,如下所示:
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 的限制还是因为我正在写入文本文件?
澄清一下,磁盘空间并未不足,磁盘有数百GB。感谢您对此事的任何帮助,谢谢。
编辑:所以我做了一些实验,最初我试图写入USB驱动器,但我决定写入我的普通硬盘驱动器。有趣的是,我的普通硬盘可以写入超过 4 GB 的数据,而 USB 则不行。我仍然不确定这是为什么。有人知道这是为什么吗?
请您参考如下方法:
您注意到这适用于您的本地磁盘,但不适用于 USB 驱动器。
原因很可能是您的 USB 驱动器格式化为 FAT32 或类似格式。该文件系统无法处理大于 4GB 的文件

