我正在使用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打开文件的方式有什么特别之处吗?
答案 0 :(得分:1)
Excel维护文件的活动读/写锁定。这对于它打开的任何文件都是如此,并且阻止其他应用程序在一半时间内读/写它们。
就个人而言,如果你想同时打开日志文件,请使用记事本,wordpad或我个人喜欢的,因为它有很多高级功能,比如文件重新加载,TextPad。