При чтении строки построчно, как узнать фактическое начало каждой строки

Так что мы можем перечитать это снова.

Скажем, я сделал:

 Dim offset = sr.BaseStream.Position
 Dim l As String = sr.ReadLine()
 Dim nextOffset = sr.BaseStream.Position

Теперь nextOffset автоматически станет равным 1024, хотя длина l всего 62. Я понимаю, что поток считывает символы по 1k за раз. Итак, я полагаю, что в буфере есть 1k вещей. Думаю, мне нужно будет найти смещение в этом буфере. Откуда я это знаю?

Кроме того, зная смещение, можем ли мы читать строку, начиная с последнего смещения?

В принципе, в будущем я хочу сделать:

sr2.BaseStream.Position = offset1
Dim l2 = sr2.ReadLine

person user4951    schedule 04.04.2012    source источник
comment
BaseStream теперь принадлежит sr - то, что он делает с ним, определяется реализацией - и вам, конечно же, не следует пытаться вносить в него какие-либо изменения.   -  person Damien_The_Unbeliever    schedule 04.04.2012
comment
Хорошо. Итак, как я узнаю, когда именно начинается линия?   -  person user4951    schedule 04.04.2012
comment
Вы зациклились на конкретном решении более крупной проблемы, о которой не рассказали нам, а я говорю, что это конкретное решение не сработает. Расскажите нам, какой файл вы читаете (может ли он весь поместиться в памяти?), интересует ли вас одна конкретная строка или все строки, почему ее положение в файле так важно и т. д.   -  person Damien_The_Unbeliever    schedule 04.04.2012
comment
Я хочу решить stackoverflow.com/questions/10004974/   -  person user4951    schedule 04.04.2012
comment
Использование незначительное. Я пытаюсь избежать нескольких строк с одинаковым хешем. Что в любом случае будет редко.   -  person user4951    schedule 04.04.2012
comment
Рассматривали ли вы другой подход? Исходная проблема звучит так, как если бы я мог импортировать файл в базу данных SQL, а затем использовать инструменты внутри для выполнения поиска. У большинства поставщиков есть бесплатная версия, которая, вероятно, справится с файлом.   -  person Damien_The_Unbeliever    schedule 04.04.2012
comment
Файлы гигабайтные. Импорт в базу данных sql? У меня есть sql, но мне нужно что-то сделать быстро.   -  person user4951    schedule 04.04.2012