巧用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