簡體   English   中英

使用Excel或記事本讀取日志文件時寫入日志文件

[英]Writing log file while reading it with Excel or Notepad

我正在使用此流寫入日志文件:

using(FileStream fs = new FileStream(Path.Combine(Folder, LogFile),
                                      FileMode.OpenOrCreate,
                                      FileAccess.Write,
                                      FileShare.ReadWrite))
{
   using(System.IO.StreamWriter file = new System.IO.StreamWriter(fs))
   {
      while(!token.IsCancellationRequested)
      {          
         file.WriteLine("bla bla bla");
      }
   }
}

此代碼示例的目的是寫入日志文件。 我想做的就是在運行此代碼時用Excel或記事本讀取它。 我可以使用Excel從外部打開文件,但是在停止程序之前該文件為空。 此外,當我嘗試使用Excel打開它時,盡管我使用FileShare.ReadWrite聲明了流,但據說文件已被鎖定以進行編輯。

在while循環中寫入文件時,如果要實時查看數據(例如在NotePad ,則需要立即Flush the data ,這很簡單

file.Flush(); 

在文件之后的while循環內。 file.Write將起作用

using(FileStream fs = new FileStream(Path.Combine(Folder, LogFile),
                                      FileMode.OpenOrCreate,
                                      FileAccess.Write,
                                      FileShare.ReadWrite))
{
   using(System.IO.StreamWriter file = new System.IO.StreamWriter(fs))
   {
      while(!token.IsCancellationRequested)
      {          
         file.WriteLine("bla bla bla");
         file.Flush();
      }
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM