c#,在流读取msbuild日志文件时出现问题,而msbuild日志记录器仍在向其写入

本文关键字:日志 msbuild 记录器 读取 文件 问题 | 更新日期: 2023-09-27 18:04:25

我尝试使用StreamReader通过使用FileSystemWatcher实时读取MSBuild日志文件。它总是提示我文件异常当MSBuild仍在写它。我的代码可能只设法显示MSBuild日志内容到我的RichTextBox控件当MSBuild完成编译…

是否有其他方法来编写代码来读取正在被另一个进程使用的文件?例如,notepad.exe可以随时读取文件而不必担心…

c#,在流读取msbuild日志文件时出现问题,而msbuild日志记录器仍在向其写入

如何实例化StreamReader?

如果你只是简单地将文件路径传递给构造函数,那么这可能是你的问题,因为这样做不会指定正确的文件共享权限。

试试这个:

StreamReader streamReader = new StreamReader(File.Open("C:''......", FileMode.Open, FileAccess.Read, FileShare.ReadWrite));

您可以尝试使用'Open'方法的重载之一,以指定您只尝试读取。这样的:

FileStream fs = 
    File.Open(path, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);