2016-04-16 33 views
0

我試圖打開一個文件,重寫它,將它保存在我的應用程序關閉它多次,我發現一個奇怪的行爲如何在C#中使用StreamWriter多次寫入和保存文件?

我打開該文件:

System.IO.StreamReader file = new System.IO.StreamReader(filePath); 

寫它與此:

using (System.IO.StreamWriter file = new System.IO.StreamWriter(filePath)) { 
      file.WriteLine(myString); 
      file.Close(); 
     } 

但該文件不會改變,直到我關閉該應用程序,爲什麼會發生這種情況?

我檢查了文件,我和應用程序被關閉

+0

您是否考慮過使用['File.AppendAllText'](https://msdn.microsoft.com/en-us/library/ms143356(v = vs.110).aspx)? –

+0

我已經這樣做了,我讀取文件,刪除它,並使用File.AppendAllText,我只是好奇這種行爲,爲什麼它發生 –

回答

0

看起來你沒有刷新到磁盤的變化後,它的內容不只是改變。這可能是由於打開StreamReader句柄。每次寫入後關閉閱讀器並重新打開它。或者在寫之前關閉閱讀器,然後再重新打開。

+0

已經嘗試過,相同的行爲 –

相關問題