我正在使用C#打开一个文本文件,然后用这段代码读取其中的所有内容:
OpenFileDialog pic = new OpenFileDialog();
pic.ShowDialog();
System.IO.StreamReader file = new System.IO.StreamReader(pic.OpenFile());
a=file.readline();
读完之后,我想再次读取数据,但它告诉我它是空的 - 我怎么能再读一遍?
答案 0 :(得分:0)
尝试这样的事情
var openDialog = new OpenFileDialog();
if (openDialog.ShowDialog == DialogResult.OK)
{
using (var stream = File.OpenRead(openDialog.FileName)
{
//read everything here
}
}
答案 1 :(得分:-1)
我的猜测是该文件只包含1行,所以一旦你读完它就没有什么可读的了。如果您想再次阅读同一行,则需要关闭该文件并再次打开。您还应该使用'使用'流读取器周围的语句,以确保它被正确处理,所以像:
string a = string.Empty;
using(StreamReader reader = new StreamReader(pic.FileName))
{
a = reader.ReadLine();
}