C#streamreader指定读取第几行

2025-03-24 22:58:08
推荐回答(1个)
回答1:

using System.IO

public partial Form1 : Form
{
    List lines;
    public Form1()
     {
            InitializeComponent();
            //存放所有行的集合
            lines = new List();
     }
     
     private void Form1_Load(object sender, System.EventArgs e)
     {
            FileStream fs = new FileStream("TextFile1.txt", FileMode.Open);
            StreamReader rd = new StreamReader(fs);
            string s;
            //读入文件所有行,存放到List集合中
            while( (s= rd.ReadLine() )!= null)
            {
                lines.Add(s);
            }         
            rd.Close();
            fs.Close();
            //第一行在textBox1中显示
            if(lines.Count > 0 )
            {
                textBox1.Text = lines[0];
            }
            //第二行在textBox2中显示
            if(lines.Count > 1)
            {
                textBox2.Text = lines[1];
            }
     }
}

还有更简单的方法,不使用StreamReader。

public partial Form1 : Form
{
    string[] lines;
    public Form1()
     {
            InitializeComponent();
     }
     
     private void Form1_Load(object sender, System.EventArgs e)
     {
            lines = File.ReadAllLines("TextFile1.txt");
            //第一行在textBox1中显示
            if(lines.Length > 0 )
            {
                textBox1.Text = lines[0];
            }
            //第二行在textBox2中显示
            if(lines.Length > 1)
            {
                textBox2.Text = lines[1];
            }
     }
}