Чтение большого файла TXT, исключение нехватки памяти

Я хочу прочитать большой размер файла TXT составляет 500 МБ, сначала я использую

var file = new StreamReader(_filePath).ReadToEnd();  
var lines = file.Split(new[] { '\n' });

но он выбрасывает из памяти Exception, затем я пытался читать построчно, но снова после чтения около 1,5 миллионов строк он выбрасывает из памяти Exception

  using (StreamReader r = new StreamReader(_filePath))
         {            
             while ((line = r.ReadLine()) != null)            
                 _lines.Add(line);            
         }

или я использовал

  foreach (var l in File.ReadLines(_filePath))
            {
                _lines.Add(l);
            }

но опять я получил

Исключение типа 'System.OutOfMemoryException» произошла в mscorlib.dll, но не была обработана в коде пользователя

Моя машина - мощная машина с 8 ГБ памяти, поэтому она не должнаЭто не моя машинная проблема.

PS: я пытался открыть этот файл в NotePadd ++, и я получил 'файл слишком велик для открытия исключение.

Ответы на вопрос(4)

Ваш ответ на вопрос