读取时是否忽略txt文件的前8行?c#

读取时是否忽略txt文件的前8行?c#,c#,streamreader,C#,Streamreader,我想忽略蓝色框中的部分,从箭头开始读取我的txt文件 我计划只循环前8行并将它们存储在一个垃圾变量中。如果我这样做,我的十字军现在会在第9行,这样我就可以从那里开始阅读了吗?我的代码肯定是错的,它甚至不读取前8行 private void button1_Click(object sender, EventArgs e) { OpenFileDialog ofd = new OpenFileDialog(); if (ofd.ShowDialog() =

我想忽略蓝色框中的部分,从箭头开始读取我的txt文件

我计划只循环前8行并将它们存储在一个垃圾变量中。如果我这样做,我的十字军现在会在第9行,这样我就可以从那里开始阅读了吗?我的代码肯定是错的,它甚至不读取前8行

private void button1_Click(object sender, EventArgs e)
    {
        OpenFileDialog ofd = new OpenFileDialog();
        if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
        {
            StreamReader sr = new StreamReader(File.OpenRead(ofd.FileName));


            for (int i = 0; i < 8; i++)
            {
                string junk = sr.ReadLine();
            }

            sr.Dispose();

        }
    }
private void按钮1\u单击(对象发送者,事件参数e)
{
OpenFileDialog ofd=新建OpenFileDialog();
if(ofd.ShowDialog()==System.Windows.Forms.DialogResult.OK)
{
StreamReader sr=新的StreamReader(File.OpenRead(ofd.FileName));
对于(int i=0;i<8;i++)
{
字符串垃圾=sr.ReadLine();
}
高级处置();
}
}
您可以使用以下功能:

var lines = File.ReadLines(ofd.FileName);

foreach (string line in lines.Skip(8))
    Trace.WriteLine(line);
由于
File.ReadLines
返回一个
IEnumerable
,因此只有在迭代时才会加载这些行


更多信息:File.ReadLines方法

这是一个愚蠢的方法,但它可以工作。 你必须使用这条线

        StreamReader sr = new StreamReader(@"TextFile1.txt");

        int i = 1;

        while (!sr.EndOfStream)
        {
            if(i > 8)
                Console.WriteLine(sr.ReadLine ());
            sr.ReadLine ();
            i++;
        }

你怎么知道它没有读这些行呢?用调试器浏览一下文件有多大?您可以用一个CALI来阅读所有内容,我尝试使用此文件,但file.readlines一直以红色下划线(我想我遗漏了一些库?),这是从.NET 4.0及更高版本开始提供的。在我提供的链接上查找更多信息。我试图使用此链接,但1)不应该是我吗