巧用FileShare解決C#讀寫文件時文件正由另一進程使用的bug


在使用C#進行文件讀寫的時候,一旦對文件操作頻繁,總會碰到一些令人措手不及的意外。例如經常會碰到的一個問題:

System.IO.IOException: 文件“XXX”正由另一進程使用,因此該進程無法訪問此文件。這個問題是碰到最頻繁的一個。其實可

以通過FileShare來完美解決這個問題,下面提供一個例子:

/*filePath為傳過來的文件路徑,endcode為設置的文件編碼方式*/
using (FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.ReadWrite, 

FileShare.ReadWrite))
{
    fs.SetLength(0);
    using (StreamWriter writer = new StreamWriter(fs, endcode))
    {
          writer.Write(content);
          writer.Flush();
          writer.Dispose();
    }
    fs.Dispose();
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM