Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 尝试读取2.09 GB文本文件时System.OutOfMemoryException_Visual Studio_Out Of Memory - Fatal编程技术网

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

Visual studio 尝试读取2.09 GB文本文件时System.OutOfMemoryException,visual-studio,out-of-memory,Visual Studio,Out Of Memory,尝试读取2.09 GB文本文件时出现System.OutOfMemoryException 我正在尝试读取一个由数百万行组成的txt文件。我正在使用这种方法 string[] srLines= File.ReadAllLines("my_file.txt"); 我有16 GB DDR3 RAM内存。解决办法是什么?多谢各位 我正在使用Microsoft Visual Studio 2010和Windows 7 64位。您是否也将目标设置为64位 在所有情况下,.NET进程对每个对象都有可分配的

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

我正在尝试读取一个由数百万行组成的txt文件。我正在使用这种方法

string[] srLines= File.ReadAllLines("my_file.txt");
我有16 GB DDR3 RAM内存。解决办法是什么?多谢各位


我正在使用Microsoft Visual Studio 2010和Windows 7 64位。

您是否也将目标设置为64位


在所有情况下,.NET进程对每个对象都有可分配的内存限制(请参阅),我不确定.NET 4.0是否改变了这一限制。在VS2012中,我的64位计算机也遇到了同样的问题。 我更改了“项目设置”-->“构建”-->取消选中“首选32位”
现在它可以正常工作了。

除非您有一个真正需要同时在内存中存储所有这些行的原因,否则您也可以使用一个命令并按顺序读取文件。您的算法可能更复杂,但占用的内存要少得多。

您是否验证过将应用程序构建为x64应用程序?为什么要一次加载整个内容?将应用程序转换为64位解决了此问题。因为exe正在使用超过5.5 gb的ram:D