方法一:使用Filestream,将文本一次性全部转换为字节,之后转换为string显示在text中
OpenFileDialog fd = new OpenFileDialog();
fd.Filter = "文本文件|*.txt"; //打开文件的类型
if (fd.ShowDialog() == DialogResult.OK)
{
fn = fd.FileName;
FileStream fs = new FileStream(fn, FileMode.Open, FileAccess.Read);
int n = (int)fs.Length;
byte[] b = new byte[n];
int r = fs.Read(b, 0, n);
textBox.Text = Encoding.Default.GetString(b, 0, n);
}
方法二:使用Filestream,逐字节读取文本,后将字节转换为string显示在text中
FileStream fs = new FileStream(fn, FileMode.Open, FileAccess.Read);
long n = fs.Length;
byte[] b = new byte[n];
int cnt, m;
m = 0;
cnt = fs.ReadByte();
while (cnt != -1)
{
b[m++] = Convert.ToByte(cnt);
cnt = fs.ReadByte();
}
textBox.Text = Encoding.Default.GetString(b);
方法三:直接使用File的Read All Text 函数将文本文件内容全部读入text
textBox.Text = File.ReadAllText(fn, Encoding.Default);
方法四:使用StreamReader,将文本中的的内容逐行读入text
StreamReader sr = new StreamReader(fn, Encoding.Default);
string line = sr.ReadLine();
while (line != null)
{
textBox.Text = textBox.Text + line + "\r\n";
line = sr.ReadLine();
}
方法五:使用StreamReader中的ReadToEnd()函数,将文本中的内容全部读入text
StreamReader sr = new StreamReader(fn, Encoding.Default);
textBox.Text = sr.ReadToEnd();