阅读许多 StreamReader
Read many of the StreamReader
我没有什么问题。我的代码在 visual studio:
file = new StreamReader("D:\BaseList.txt");
string line;
while ((line = file.ReadLine()) != null)
{
listBox1.Items.Add(line);
}
file.Close(); // 1
file = new StreamReader("D:\Baza3.txt"); //2
我阅读了文件中的所有行,我想再次从头开始阅读。我是否必须关闭流并将文件重新加载到流(第 1 行和第 2 行)?
有没有一种方法可以在不使用此编号行的情况下在我的文件开头设置流?
您可以像这样重置基本流的位置
streamReader.BaseStream.Position = 0;
只有在基本流可搜索的情况下才能这样做。 (myStream.CanSeek == true
)。当您使用路径字符串创建新的 StreamReader 时,您的情况就是如此。
尝试将 BaseStream
Position
设置为 0,或者在实际开始阅读之前将内容复制到 MemoryStream
。
查看此线程:
Return StreamReader to Beginning
我没有什么问题。我的代码在 visual studio:
file = new StreamReader("D:\BaseList.txt");
string line;
while ((line = file.ReadLine()) != null)
{
listBox1.Items.Add(line);
}
file.Close(); // 1
file = new StreamReader("D:\Baza3.txt"); //2
我阅读了文件中的所有行,我想再次从头开始阅读。我是否必须关闭流并将文件重新加载到流(第 1 行和第 2 行)? 有没有一种方法可以在不使用此编号行的情况下在我的文件开头设置流?
您可以像这样重置基本流的位置
streamReader.BaseStream.Position = 0;
只有在基本流可搜索的情况下才能这样做。 (myStream.CanSeek == true
)。当您使用路径字符串创建新的 StreamReader 时,您的情况就是如此。
尝试将 BaseStream
Position
设置为 0,或者在实际开始阅读之前将内容复制到 MemoryStream
。
查看此线程: Return StreamReader to Beginning