c#中怎么读取txt文件的最后几行

txt文件中每次生成的行数都是不固定的,我想用c#读取这个txt文件,并且只读取他的后三行,请问怎么办,最好贴出详细的代码

//使用StreamReader流打开txtStreamReader sr = new StreamReader(@"c:\dbsetting.txt");//读取txt全部内容
string str = sr.ReadToEnd();//按\r\n分割为数组,数组的每一维就是一行数据
string[] aryStr = Regex.Split(str, "\r\n");//取最后一行string last = aryStr[aryStr.Length - 1];//倒数第二行就用aryStr.Length减2//关闭StreamReadersr.Close();
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-16
关键代码
FileStream fs = new FileStream("1.txt",FileMode.Open);
StreamReader r=new StreamReader(fs);
string[] tmp=new string[3];
int i = 0;
while (r.Peek() > -1)
{
tmp[i] = r.ReadLine();
i++;
if (i > 2) i = 0;

}
foreach(string tmpstr in tmp)
{
Console.WriteLine(tmpstr);
}
第2个回答  2013-07-16
哪有这么麻烦... LZ 告诉你个很简单的方法 将你要读得txt 按行数来读 每读一行 将这一行存入ArrayList里面 然后取 arraylist 最后行就行了 如果麻烦就反转下arraylist
相似回答