关于处理unity读取excel文件时,有IOException 报错的问题

unity中读取excel文件,已经知道在读取文件的过程中,如果手动打开excel的话,会报错如下:
IOException: Sharing violation on path ...
目前的需求是,系统中会每三分钟执行一次读excel的数据,每天不定时会有人手动打开excel输入数据,这样就很大概率有读数据的时候,excel是打开的状态的情况,所以想请问一下大家,有什么办法可以处理这种情况的发生。
已经尝试过用try-catch抓取IOException错误之后,等待一定时间再尝试读excel数据,但运行起来会系统卡死
先谢谢大家!

将本地读后的最新数据写到内存当中,读数据之前,判断文件是否已被打开,即判断是否有“~$”开头的同名文件在同级目录下。如若有,则跳过本次读数据的流程,转而读内存当中的数据。

可以尝试一下,先判断文件是否已打开,若已打开先尝试使用代码关闭,保存或者释放一下,然后再次尝试打开,看看是否可行

程序用共享方式打开数据文件

有个曲线救国的方式可以尝试一下,每当三分钟的时候,可以先用File.Copy复制一份文件,我刚试了,File.Copy在文件打开的时候,是可以正常复制的,然后就是读取复制后的文件,读取完成之后把复制后的文件删除即可。

不要直接去读,可以先判断文件是否被打开了,被打开了就再等3分钟再读呗。