StringBuilder.ToString() 读取 145M 文件时内存不足

StringBuilder.ToString() throwing out of memory reading 145M file

我正在对一个大小为 145M 的文件调用 StreamReader.ReadToEnd()。它在 StringBuilder.ToString() 中抛出异常。我 运行 处于 32 位模式。

这应该不是问题。它很大,但不是那么大。知道为什么会抛出异常吗?

有任何建议的解决方法吗?

内存映射文件 使程序员能够处理非常大的文件,因为可以同时管理内存,并且它们允许对文件进行完整、随机的访问而无需查找。

var mmf = MemoryMappedFile.CreateFromFile(@"c:\ExtremelyLargeImage.data", FileMode.Open,"ImgA")

https://msdn.microsoft.com/en-us/library/system.io.memorymappedfiles.memorymappedfile.aspx