我已经找到了逐行阅读的数百个答案,但没有一个可以指定您想要阅读的行的答案。 说我的文件看起来像这样:
A
B
C
D
E
我想读第3行(在这种情况下实际上是第2行我想 - 假设我想要“C”)。
我该怎么做?
我当然可以制作一个循环并停在选定的行,但是不是有更好的(不那么难看)的方法吗?像MyStreamReader.Row(2).Read
或类似的东西?
答案 0 :(得分:1)
最有效的方法是流式传输线路并计算每条线路。使用File.ReadAllLines
,您必须等待返回整个字符串数组,然后才能访问该数组。
一种简单的方法是使用File.ReadLines
,其工作方式类似于流阅读器:
Dim thirdLine = File.ReadLines(path).ElementAtOrDefault(2)
如果指定的索引太大, Enumerable.ElementAtOrDefault
将返回Nothing
。所以你可以用这种方式检查它:
If thirdLine IsNot Nothing Then
Console.WriteLine("Third line: " & thirdLine)
Else
Console.WriteLine("The file doesn't contain 3 lines")
End If