使用StreamReader读取特定行

cri*_*ina 0 c# streamreader

我的流阅读器有问题.我想从文本文件中读取一行.

我想要一条特定的线,比如第七条线.而且我不知道该怎么做.

这是一个功能或类似的东西?喜欢file.ReadLine(7号)?

Jon*_*eet 9

最简单的方法可能是使用LINQ结合File.ReadLines:

string line = File.ReadLines("foo.txt").ElementAt(6); // 0-based
Run Code Online (Sandbox Code Playgroud)

可以使用File.ReadAllLines,但即使您只想要一个早期文件,也会读取整个文件.如果您需要各种不同的线路,这意味着您可以一次性阅读它们.你可以写有效地读取多个特定行(即在一次通过,但一次不超过一个行)的方法相当容易,但它会矫枉过正,如果你只想要一条线.

请注意,如果没有足够的行,这将抛出异常 - ElementAtOrDefault如果您想要处理该行而没有任何异常,则可以使用.