【发布时间】:2018-06-29 12:20:16
【问题描述】:
你有一个 c# 应用程序。
我已经创建了自己的日志文件。
当我的应用程序运行时,我会打开这个日志文件。然后我想看看发生的变化,而应用程序正在运行和“录制”。
我环顾四周,但我能找到的只是如何读取正在更新的文件,而不是相反。
我目前只有这个...
protected void LogSync(string message)
{
try
{
lock (SynLock)
{
using (var sw = new StreamWriter(SyncFilename, true))
{
sw.Write(message + Environment.NewLine);
sw.Close();
}
}
}
catch (Exception e)
{
Console.WriteLine(e);
throw;
}
}
【问题讨论】:
-
我认为您需要关闭文件日志并在应用执行某些操作以显示结果后打开它。
-
@osmanRahimi 对不起,但这是我的问题是否可以在不关闭和打开日志文件的情况下查看更新。我知道有可能我只需要知道如何
-
为了记录,您的
using (var fs = new FileStream(SyncFilename, FileMode.Append, FileAccess.Write, FileShare.ReadWrite))代码是不必要的。如果文件不存在,StreamWriter将创建该文件。此外,您不需要对包装在using语句中的对象调用Close()或Dispose()。将其包装在using中的原因是它会自行处理,即使发生异常也是如此。 -
@VisualVincent 谢谢 :)