Как через StreamReader считать строку с определенной позиции?
Использую многопоточность и мне нужно считывать из фала строки по очереди, грузить в память плохо. Как это сделать? У меня пока только 1 вариант, каждый раз пробегать циклом до нужного элемента. Можно ли как-то лучше сделать?
1) первым проходом строим "индекс" - сохраняем в списке начала всех строк (в смысле, номер байта в потоке);
2) дальнейшие чтения делаем с помощью индекса;
Это будет быстрее постоянного прохода заново с начала файла. При построении индекса весь файл грузить в память не нужно, хотя понятно, что надо оценить размер этого индекса относительно количества строк и средней длины строки.