c# - 写入在 Excel 中打开的文件

标签 c# file-io

假设我有一个程序正在运行,它会定期将信息添加到 .CSV 文件中。有没有办法在文件已经在 Excel 中打开时写入文件?显然,在文件在 Excel 中重新打开之前不会注意到这些更改,但就目前而言,我正在捕获 IOException 并在当前文件已经打开的情况下开始一个新的 .csv 文件。

最佳答案

Excel 似乎以独占模式打开文件,所以我能想到的唯一方法是将您的更改写入临时文件,然后使用 FileSystemWatcher 查看文件何时关闭, 并覆盖该文件。

这不是个好主意,因为您可能会丢失数据。 excel 锁定文件的全部原因是您不会不小心覆盖在 excel 中所做的更改。

关于c# - 写入在 Excel 中打开的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/947172/

相关文章:

c# - 如何检测 Razor 页面中的回发?

c# - 从 CodeBehind 文件调用 JS 函数

c++ - 如何从 C++ 中的输入读取文件路径以便打开 txt 文件?

c - 一次读取两个文件一个字节

java - 我有一个程序应该将一些数据写入文件,但它没有,我不知道为什么

java - 为什么我在 Java 中收到未报告的异常错误

c# - 使用 BinaryFormatter 序列化和反序列化对象图

c# - 计算以避免数据库中出现负值

c# - 有一个单一的,可能是常见的,通用的异常是不是糟糕的编程风格?

c++ - 提高ofstream的性能