1. 程式人生 > >C#讀取被程序佔用的檔案

C#讀取被程序佔用的檔案

最近所做的一個專案中,需要實現一個讀取日誌檔案的功能,開始我使用的讀取日誌檔案的方法如下:

 

在讀取歷史日誌檔案時,沒有問題,但是在讀取當前正在寫的日誌檔案時,就出現問題了。
出現以下錯誤:
檔案“F:/AutoUpdater/log/logfile20090422.txt”正由另一程序使用,因此該程序無法訪問該檔案
logfile20090422.txt檔案是系統中的日誌檔案,每天一個檔案,不定時的會進行寫入。
解決方案:
使用以下程式碼

 

  

總結:
這樣的情況,不單要與只讀方式開啟txt檔案,而且,需要共享鎖。還必須要選擇flieShare方式為ReadWrite。因為隨時有其他程式對其進行寫操作。