您如何读取正在使用的文件?[重复]

即使遇到“另一个进程正在使用”异常,如何读取文件? (4个答案)

4年前关闭。

我有一个小问题。我有一个工具应该每天解析一个日志文件,不幸的是,该日志文件正在写入日志的进程中使用,我无法停止它。

首先尝试创建该文件的副本,但该副本也不起作用。

我有什么办法可以读取日志文件的当前文本,即使该文件已经被使用了?

回答:

using (FileStream stream = File.Open("path to file", FileMode.Open, FileAccess.Read, FileShare.ReadWrite))

{

using (StreamReader reader = new StreamReader(stream))

{

while (!reader.EndOfStream)

{

}

}

}

FileAccess指定您要对文件执行的操作。FileShare指定文件在使用中时OTHERS可以做什么。

在上面的示例中,您可以打开文件进行读取,而其他进程可以打开该文件以进行读/写访问。在大多数情况下,这对于打开正在使用的日志文件有效。

以上是 您如何读取正在使用的文件?[重复] 的全部内容, 来源链接: utcz.com/qa/400311.html

回到顶部