大虾们帮帮忙
if  (  openFileDialog1.ShowDialog  (  )  ==  DialogResult.OK  )
{
FileStream  fs  =  new  FileStream  (  openFileDialog1.FileName    ,  FileMode.Open  ,  FileAccess.Read  )  ;
StreamReader  m_streamReader  =  new  StreamReader  (fs,System.Text.Encoding.Default);  
//使用StreamReader类来读取文件
m_streamReader.BaseStream.Seek  (  0  ,  SeekOrigin.Begin)  ;

//  从数据流中读取每一行,直到文件的最后一行,并在richTextBox1中显示出内容
this.richTextBox1.Text  =  "*********************************交换机工作信息*********************************\n"  ;
string  strLine  =  m_streamReader.ReadLine  (  )  ; //this.richTextBox1.Text=m_streamReader.ReadToEnd();
int rowNum=0;
DateTime dtstart=DateTime.Now;
while  (  strLine  !=  null  )
{
rowNum++;
//if (rowNum<1000)
//{
//对输入的文本内容进行处理,注意此处使用的处理方法不一定对,需检验
//将一行数据读取到数组中
string[] sArray=Regex.Split(strLine," ",RegexOptions.IgnoreCase);
//对数组中的数据进行处理
this.richTextBox1.Text+="*********************************第"+rowNum.ToString()+"条记录*********************************\n";
this.richTextBox1.Text+="日期:"+sArray[0].ToString()+" "+sArray[1].ToString()+"\n";
this.richTextBox1.Text+="时间:"+sArray[2].ToString()+"\n";
this.richTextBox1.Text+="交换机地址:"+sArray[3].ToString()+"\n";
this.richTextBox1.Text+="交换机时间:"+sArray[4].ToString()+" "+sArray[5].ToString()+"\n";
this.richTextBox1.Text+="交换机名及端口号:"+sArray[6].ToString()+"\n";
this.richTextBox1.Text+="交换机信息:";
for (int i=7;i<sArray.Length;i++)//剩余的所有信息内容
this.richTextBox1.Text+=sArray[i].ToString()+" ";
this.richTextBox1.Text+="\n";
this.richTextBox1.Text+="******************************************************************************\n\n";
//}

strLine  =  m_streamReader.ReadLine  (  )  ; }
DateTime dtend=DateTime.Now;
//this.richTextBox1.Text+=rowNum.ToString();
MessageBox.Show("处理了"+rowNum.ToString()+"条记录,耗时"+(dtend-dtstart).ToString()); //关闭此StreamReader对象
m_streamReader.Close  (  )  ;
} 进行文本处理时,超过100行记录时,处理的速度就会非常慢,还会出现未响应现象
(但最终可以得到处理结果,我用800多行测试过,需要40多分钟,晕死,文本文件才100K左右)
大虾们帮看看代码怎么优化好!!