Максимально быстрое чтение очень большого файла - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день, задача прочитать очень большой файл (1GB-10GB+). Нужно провести операцию с каждой строкой этого файла. Используя StreamReader + ReadLine чтение получается до безобразия долгим. Может есть способ загрузки файлов в оперативную память и потом быстро посточно его прочитать от туда ? (У меня RAM 32G) Или ещё какойто способ. Читал про MemoryMappedFile - в упор не понимаю как оно работает. Ещё вроде как можно выделить себе память с помощью malloc - тоже не въезжаю как оно там пашет)

Решение задачи: «Максимально быстрое чтение очень большого файла»

textual
Листинг программы
  1. long step = Info.Length/100;
  2. long lastPos = 0;
  3.  
  4. ...
  5.  
  6. if (sr.BaseStream.Position - lastPos >= step)
  7. {
  8.    lastPos = sr.BaseStream.Position;
  9.    drawTextProgressBar(sr.BaseStream.Position, Info.Length);    
  10. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.077 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы