zoukankan      html  css  js  c++  java
  • C#读写文件时出现占用的解决办法

    一、错误提示

    当我们读取一个文件而该文件被占用时会报错如下信息:

    image-20211115093806646

    二、解决办法

    此问题发生一般是资源没被释放掉,但也存在如下可能性。我们对文件的操作非常频繁,所以写了特定的操作类/组件来维护文件之间的操作,知道特定的时刻才结束,常见的如日志,随着程序的启动便开始写日志,直到程序关闭。但其中也存在我们需要提供一个特殊的操作(读/写/删除)来操作文件,例如我们需要提供一个日志查看器来查看当前日志或所有日志,这时,便无可避免的发生了以上的问题。解决此问题,只需将文件读写锁改为FileShare.ReadWrite(FileShare就是控制文件流的“访问权限),具体代码如下:

     using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
     {
       byte[] bt = new byte[fs.Length];
       fs.Read(bt, 0, bt.Length);
       fs.Close();
      }
    
  • 相关阅读:
    单页面应用 之 项目中集成插件vue-router
    公共组件的创建和使用
    数据库初识
    MySQL的安装 --windows版本
    多线程补充以及协程
    多线程(三)
    多线程(二)
    多线程(一)
    多进程(二)
    多进程(一)
  • 原文地址:https://www.cnblogs.com/dongweian/p/15554614.html
Copyright © 2011-2022 走看看