将StreamReader返回到开始
我正在逐行读取文件,并且希望能够通过调用method重新启动读取Rewind()
。
我如何操纵我System.IO.StreamReader
和/或其底层System.IO.FileStream
以重新开始阅读文件?
我有个聪明的主意,可以FileStream.Seek(long,
SeekOffset)在文件中四处移动,但是包围起来没有任何效果System.IO.StreamReader
。我可以Close()
重新分配信息流和读者参考,但我希望有更好的方法。
回答:
你需要寻求流,像你这样,然后调用DiscardBufferedData
上StreamReader
。此处的文档:
编辑:添加代码示例:
Stream s = new MemoryStream();StreamReader sr = new StreamReader(s);
// later... after we read stuff
s.Position = 0;
sr.DiscardBufferedData(); // reader now reading from position 0
以上是 将StreamReader返回到开始 的全部内容, 来源链接: utcz.com/qa/421700.html