我在監視正在由服務器程序寫入的文本文件。每次更改文件時,內容都會輸出到我的程序中的一個窗口中。讀取另一個進程使用的文件
的問題是,因爲它是被used by another process
我不能在文件中使用Streamreader
。使用ReadWrite
設置Filestream
將無濟於事,因爲我無法控制正在使用該文件的進程。
我可以在記事本中打開該文件。即使服務器正在使用它,也必須能夠訪問它。
有沒有解決這個好辦法?
我應該做到以下幾點?
- 監控文件
- 做它的一個臨時副本時,它改變
- 閱讀的臨時副本
- 刪除臨時副本。
我需要的文本文件中,每當服務器更改它。
謝謝......我沒有意識到FileShare.Read在這種情況下會不正確。 – 2014-07-06 12:46:03
通過使用'FileShare.ReadWrite | FileShare.Delete'你可以訪問更多數量的文件。 「FileShare.ReadWrite」不夠時值得一試 – Adassko 2016-04-22 13:24:45
@Adassko或者當'FileShare.Read'還不夠時,就像在這種情況下一樣,在我的特殊情況下,我在同一類代碼中使用它,以及必須切換到'FileShare.ReadWrite'才能使其工作。 – vapcguy 2017-11-16 21:54:45