System.OutOfMemoryException尝试读取2.09 GB文本文件时

问题描述

|
System.OutOfMemoryException
尝试读取2.09 GB文本文件时 我正在尝试读取包含数百万行的txt文件。我正在使用这种方法。
string[] srLines= File.ReadAllLines(\"my_file.txt\");
我有16 GB DDR3 RAM内存。解决办法是什么?谢谢。 我正在使用Microsoft Visual Studio 2010和Windows 7 64位。     

解决方法

        您是否也将目标设置为64位? 在所有情况下,.NET进程都有每个对象可分配的内存限制(请参阅http://blogs.msdn.com/b/joshwil/archive/2005/08/10/450202.aspx),我不确定是否已更改使用.NET 4.0     ,        我在VS2012的64位计算机上遇到了相同的问题。 我更改了“项目设置”->“构建”->取消选中“首选32位” 现在工作正常。     ,        除非确实有必要一次将所有这些行都存储在内存中,否则还可以使用StreamReader并顺序读取文件。您的算法可能更复杂,但是将使用更少的内存。     

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...