我試圖模擬一些文件操作。在「真實」的對象,我有:避免處理底層流
StreamWriter createFile(string name)
{
return new StreamWriter(Path.Combine(_outFolder, name), false, Encoding.UTF8));
}
在模擬對象我倒是喜歡向有:
StreamWriter createFile(string name)
{
var ms = new MemoryStream();
_files.Add(Path.Combine(_outFolder, name), ms);
return new StreamWriter(ms, Encoding.UTF8));
}
其中_files是存儲創建的文件供以後檢查的字典。
然而,當消費者關閉的StreamWriter,它也處置的MeamoryStream ... :-(
如何追求這個有什麼想法?
我喜歡這個!但是Flush()是不必要的 - 它是需要刷新的「上面」流,這在現在已經完成了。 – 2010-04-12 10:58:07
@danbystrom,很高興幫助。你是對的,StreamWriter會在它處理之前刷新。但Seek可能很有用。 – 2010-04-12 11:10:38