造成IOException異常我讀這是定期由第三方程序寫入到文件中。讀取文件而無需對第三方程序
using (FileStream fs = new FileStream(
FullPath,
FileMode.Open,
FileAccess.Read,
FileShare.ReadWrite))
然而,第三方程序被寫入文件,但所以偶爾使用FileShare.None
我已經拿到了文件進行讀取操作時,第三方程序:使用下面的FileStream 即時閱讀嘗試以獨佔訪問方式打開文件但失敗。
如何我可以讀不會導致問題的第三方程序這個文件? 我不介意釋放我的閱讀以優先考慮另一個應用程序。任何方式來做到這一點?
你試過把它複製到一個臨時位置,並從那裏讀?通常,我所做的是創建一個函數,該函數嘗試讀取文件,如果它在使用中返回false,但如果不返回true,則嘗試複製文件並將其移動到我可以使用的位置。使用生產文件可能會有潛在的危險,特別是在組合中有2個進程。 – Bearcat9425
File.Copy只是在後臺執行FileStream。問題不在我嘗試閱讀並鎖定時。當我有權訪問該文件並且第三方程序嘗試獲取獨佔訪問權限時,由於我已打開它,因此無法訪問。 – CathalMF
如果您將文件複製到臨時位置並讓您的程序使用該臨時文件,從而使原始文件未被使用並因此仍然可以通過第三方程序訪問而沒有任何問題,該怎麼辦。如果這是有道理的:D – aladd04