我正在使用一个
这个日志文件是由第三方应用程序写入的。
一旦触发了更改,我尝试使用以下方法读取文件:
有时候它会在
其他时候,它会在
我认为通过设置
我该如何确保这不会导致异常,或者我需要循环直到成功读取为止?
FileSystemWatcher
来监视日志文件的更改。这个日志文件是由第三方应用程序写入的。
一旦触发了更改,我尝试使用以下方法读取文件:
using (FileStream fs = new FileStream(e.FullPath, FileMode.Open,
FileAccess.Read, FileShare.ReadWrite))
{
StreamReader sr = new StreamReader(fs);
string s = sr.ReadLine();
}
有时候它会在
using
那一行失败。其他时候,它会在
sr.ReadLine()
那里失败,我猜测这是因为第三方系统正在访问该文件。我认为通过设置
FileAccess.Read
,我应该能够始终读取文件?我该如何确保这不会导致异常,或者我需要循环直到成功读取为止?