Mi sono accostato da poco nel mondo del Visual Basic dopo anni di utilizzo di C++, vorrei gestire dei dati presenti in un file, e vorrei creare un cliclo DO UNITL EOF, purtroppo non risco a leggere fino a End Of File, mi da un errore.

Per leggere da file uso

codice:
        
Dim r As New IO.StreamReader("nome file")
Dati(i) = r.ReadLine
che cosa devo dare per uscire dal DO e poter leggere fino a fine file?

Inoltre in altri linguaggi di programmazioni c'è la possibilità di leggere, oltre per riga, fino ad un determinato carattere (una sorta di seek) per poi inizializzare l'array dei dati, è possibile una cosa del genere in VB.NET?