我想寫一個字符串數組到一個文件,這通常應該是一件容易的事情。然而,以下簡單代碼拋出IOException,表示該文件正在被另一個進程使用。問題是,該代碼運行之前,該文件甚至不存在。我可以保證,沒有其他進程正在使用該文件。那麼我該如何說服愚蠢的.NET框架該文件沒有被另一個進程使用,並且可以繼續?因爲這真的不應該那麼難。爲什麼不能正常工作?
StreamWriter writer = new StreamWriter(ListFileName);
foreach (string s in InfoLineList)
{
writer.WriteLine(s);
}
可你只需要使用'File.WriteAllLines(路徑,InfoListList)' ?也許無論你遇到什麼文件鎖定問題都可以避免。 –
我可以。但我真的很想知道爲什麼它認爲該文件在其他地方打開? –
好的,我將它改爲使用WriteAllLines,現在它可以工作。我仍然不明白爲什麼它不能以另一種方式工作,如果有人能夠向我解釋這一點,但是WriteAllLines確實起作用,我將不勝感激。 –