我尝试用一些额外的方法和属性"包装"一个StreamReader类Fichier.
我想要两件事:
StreamReader在自动打开Fichier类;StreamReader当我们使用overrided方法打开ReadLine,而不是之前(我们需要有阅读它之前修改文件StreamReader).我的一段代码看起来像这样:
public string ReadLine()
{
if (Reader == null || ???)
{
Reader = new StreamReader(Path);
}
return Reader.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)
在???,我想检查StreamReader是否已关闭.的确,如果我们这样做:
StreamReader sr = new StreamReader(path);
sr.Close();
Run Code Online (Sandbox Code Playgroud)
sr 不是null,但如何检查它是否已关闭,以及如何重新打开它?
如果你想知道我为什么需要打开和关闭StreamReader,那是因为Fichier对象需要随时存在,但是它所代表的文件需要在外部程序中多次修改.
最简单的事情是Dispose(你真的应该这样做,它也关闭了流)它并null在关闭它时将其设置为.
您可以选择检查EndOfStream,但这需要您阅读流的末尾.