Net Core教程

在C#中读取被其它进程打开的文件

本文主要是介绍在C#中读取被其它进程打开的文件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

在C#中,如果我们尝试读取某个被其它进程以写模式打开的文件件时,会遇到IO异常:

有的时候,这个被其进程占用的异常是比较令人烦心的。最近我写一个解析excel的程序的时候,由于这个异常,程序运行的时候还必须把excel关掉,得等程序跑完的时候还才能再次打开excel验证,非常不方便。从文件访问的模式来看,一个进程写,多个进程读应该是不冲突的。查了下相关的资料,只要指定FileShare参数为ReadWrite即可, 一个简单的示例如下:

    File.Open(@"r:\input.xlsx", FileMode.Open, FileAccess.Read, FileShare.ReadWrite);

本来也算是一个常规操作了,之前也用过;但由于用得不多,容易忘,这里做个笔记,以备后续查询。

这篇关于在C#中读取被其它进程打开的文件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!