如果您确定文件会相当小,那么从文本文件中读取行的最简单方法是使用:
Dim lines = System.IO.File.ReadAllLines(fullFileName)
lines
将是一个字符串数组,因此您可以访问该数组中的随机行。
但是,如果您不确定文件是否很小,并且您不想冒内存不足的风险,那么 aStreamReader
真的还不错 - 它的设计目的是在您阅读文本文件时易于使用,不像FileStream
还有一些其他的方法,这些方法有点棘手。
首先,您需要知道文件中有多少行,因此您必须通读一次文件,然后在您选择一个随机数后再次阅读。
Dim numLines as Integer = 0
Using sr As New System.IO.StreamReader(fullFileName)
Dim line As String = sr.ReadLine()
While line IsNot Nothing
numLines = numLines + 1
line = sr.ReadLine()
End While
End Using
一旦你确定有多少行,你可以选择你的随机数,然后重复这个过程,在预定的行处停止。