“文件已经在使用错误”即将到来,但只有在excel中打开时才会出现

时间:2013-10-18 00:38:03

标签: excel filehelpers

我正在使用Filehelpers来读取日志文件。 为了安全起见,我想确保它不会抛出“File Already in use”错误。在日志解析过程启动时,日志编写器的清理可能仍然存在的可能性很小。

我正在使用filehelpers“ReadFileAsDT”方法并将其传递给文件名。

我浏览了源代码,发现它是以只读模式打开文件,这是正确的。

var stream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read, bufferSize, FileOptions.SequentialScan);
            this.Init(stream, encoding, detectEncodingFromByteOrderMarks, bufferSize);

但是,为了确保我在excel中保持日志文件处于打开状态。并运行日志解析器。它给出了“使用中的文件错误”。

如果我在记事本,写字板或Notepad ++中保持文件打开,则此错误不会出现。

excel打开文件的方式有什么特别之处吗?

1 个答案:

答案 0 :(得分:1)

Excel维护文件的活动读/写锁定。这对于它打开的任何文件都是如此,并且阻止其他应用程序在一半时间内读/写它们。

就个人而言,如果你想同时打开日志文件,请使用记事本,wordpad或我个人喜欢的,因为它有很多高级功能,比如文件重新加载,TextPad。