有沒有更好的方法來檢查文件是否沒有鎖定,然後打開文件來捕獲異常。我有一個filewatcher在一個目錄上運行,我需要在文件完全移動/創建位置之後對文件執行一些操作。不會拋出一個例外的表現嗎?有沒有更好的辦法?檢查文件鎖定沒有嘗試捕獲
Private Function FileAvailable(ByVal fileName As String) As Boolean
Try
Using inputStream As FileStream = File.Open(fileName, FileMode.Open, FileAccess.Read, FileShare.None)
Return True
End Using
Catch ex As IOException
Return False
End Try
End Function
或
private bool FileAvailable(string fileName) {
try {
using (FileStream inputStream = File.Open(fileName, FileMode.Open, FileAccess.Read, FileShare.None)) {
return true;
}
}
catch (IOException ex) {
return false;
}
}
的最佳方式有點高手指教。謝謝
該文件正被複制到監視目錄中。沒有其他用戶可以訪問該目錄。我只需要驗證該文件是否完全複製到我處理並自己移動文件的目錄中。我需要獨家訪問它。
你必須定義'我需要對文件做些什麼'的含義。不同的操作意味着不同的訪問權限,共享權限,... – 2009-02-13 22:32:05
重複的http://stackoverflow.com/questions/1304/checking-for-file-lock-in-c – 2009-02-13 22:37:11