c#读取文件:把读取的文本文件,用一个richTextBox组件显示出来。要读取文本文件,必须使用到"StreamReader"类,这个类是由名字空间"System.IO"中定义的。通过"StreamReader"类的"ReadLine ( )"方法,就可以读取打开数据流当前行的数据了。下面代码实现的功能就是读取"C:\file.txt"并在richTextBox1组件中显示出来:
FileStream fs = new FileStream ( "C:\\file.txt" , FileMode.Open , FileAccess.Read ) ;
StreamReader m_streamReader = new StreamReader ( fs ) ;
//使用StreamReader类来读取文件
m_streamReader.BaseStream.Seek ( 0 , SeekOrigin.Begin ) ;
// 从数据流中读取每一行,直到文件的最后一行,并在richTextBox1中显示出内容
this.richTextBox1.Text = "" ;
string strLine = m_streamReader.ReadLine ( ) ;
while ( strLine != null )
{
this.richTextBox1.Text += strLine + "\n" ;
strLine = m_streamReader.ReadLine ( ) ;
}
//关闭此StreamReader对象
m_streamReader.Close ( ) ;
当我们在使用StreamReader 的时候,
按以下代码编写,都会出现乱码,原因是,必须使用 GB2312 的编码方式读取中文字符才不会出错。// 不过现在基本上GBK编码,下面只是演示
StreamReader reader = new StreamReader(txtUrl);
StreamReader reader = new StreamReader(txtUrl, Encoding.UTF-8);
正确写法是:
StreamReader reader = new StreamReader(txtUrl, Encoding.GetEncoding("gb2312")); |