【发布时间】:2020-08-19 18:09:51
【问题描述】:
我正在编写一个应用程序,它将数据从 excel 文件转换为 XML 文件以供另一个应用程序使用。您对 excel 文件进行了一些更改,保存它们,将它们以只读方式加载到我的 C# 表单应用程序中,然后保存生成的 xml。唯一的问题是,这是一个非常迭代的过程,目前如果文件在 excel 中打开,我的应用程序会引发异常。所以要让它工作,你必须关闭 excel(或关闭文件),运行应用程序,然后重新打开 excel。
我的代码是这样的;
using (var stream = File.Open(filename, FileMode.Open, FileAccess.Read, FileShare.Read))
这会导致 IO 异常。
【问题讨论】:
-
这能回答你的问题吗? Reading a file used by another process
-
差不多,虽然没有出现在搜索中。我假设 Excel 文件在操作系统级别执行某些操作,使其成为一般文件访问的例外。
-
这个问题被问及之前回答过:stackoverflow.com/questions/9759697/…