方法一:使用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();
-