对于windows服务,我有一个将日志条目输出到文本文件的过程。这一切都很好,但我看不见它的实况。一旦我打开文件来查看日志,它就会停止对它的写入,因为我假设服务不能写入打开的文件。
我的问题:是否有一种方法可以用类似于控制台的东西来监视这个文本输出?此解决方案仅用于调试目的。我不想要GUI或类似的东西--只是简单地观察我的记录器在做什么。
现在写到我正在做的文本文件:
RecordDataToLog("Log this");
private void RecordDataToLog(string txtData)
{
using (System.IO.StreamWriter file = new System.IO.StreamWriter(logFileDir, true))
file.WriteLine(txtData);
}
我试着像这样使用Console
,但是它没有工作--没有显示控制台窗口。
Console.WriteLine("Log this");
或者是否有其他文本编辑器或文本文件类型支持写入打开的文件?
发布于 2014-12-22 07:45:41
我用记事本和Notepad++打开了文件,并且仍然能够用StreamWriter写入文件,所以它必须是打开文件的编辑器。记事本根本不刷新内容。你得重新打开文件。Notepadd++应该提示您并询问是否要重新加载。
PowerShell v3在Get-Content上包含一个选项,用于打开文件并在添加时打印新内容,类似于在*nix OSes上的尾:
Get-Content "C:\path\to\log\file" -Wait
发布于 2014-12-22 07:28:51
发布于 2014-12-22 07:29:08
您可以使用Notepad++。
如果您在命令行中通过以下方式启动
notepad++.exe -ro "MyLogFile.txt"
然后它将以只读模式打开文件。
https://stackoverflow.com/questions/27605504
复制相似问题