永发信息网

C#中一个StreamReader已经ReadToEnd了,想要重新再读一遍,怎么办

答案:4  悬赏:30  手机版
解决时间 2021-11-18 16:41
  • 提问者网友:暮烟疏雨之际
  • 2021-11-17 18:39
C#中一个StreamReader已经ReadToEnd了,想要重新再读一遍,怎么办
最佳答案
  • 五星知识达人网友:天凉才是好个秋
  • 2021-11-17 19:26
//
String totalLines = streamReader.ReadToEnd();
// 重置文件指针至文件头.
streamReader.BaseStream.Seek(0, SeekOrigin.Begin);
//
String firstLine = streamReader.ReadLine();

不要不停的打开文件, 不划算.
全部回答
  • 1楼网友:舍身薄凉客
  • 2021-11-17 21:35
重新打开一次就行了
  • 2楼网友:長槍戰八方
  • 2021-11-17 20:03
StreamReader等于的时候是将自己传过去的,这两个变量指示同一样东西,当然一起readtoend、readLine
还是Close以后重新new吧
OpenFileDialog open = new OpenFileDialog();
if (open.ShowDialog() == DialogResult.OK)
{
StreamReader sr = new StreamReader(open.FileName, Encoding.GetEncoding("GB2312"));
richTextBox1.Text = sr.ReadToEnd();
sr.Close();
sr = new StreamReader(open.FileName, Encoding.GetEncoding("GB2312"));
MessageBox.Show(sr.ReadLine());
}
  • 3楼网友:長槍戰八方
  • 2021-11-17 19:37
那就得重新获取一下呗
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯