我正在使用File Watcher(.NET),並且總是收到以下錯誤 - 文件正在被另一個進程使用。FileSystemWatcher文件訪問錯誤
上述錯誤只出現在網絡共享中,即觀察目錄是共享的,並且如果有人將文件放入該目錄,則只會發生此錯誤。當我把我的m/c文件放到監視目錄(本地)時,它工作正常。
這是我的下面的代碼看起來如何,錯誤出現在第一行本身。我已經嘗試了所有在網上給出的解決方案,但似乎沒有任何工作。當我把Thread.Sleep(500),但之後,它是無法挑選下一個文件的唯一解決方案。任何建議將是一個很大的幫助。
try
{
using (Stream stream = File.Open(xmlPath, FileMode.Open, FileAccess.Read, FileShare.Read))
{
XmlTextReader xmlTextReader = new XmlTextReader(stream);
document = XDocument.Load(xmlTextReader);
........ // my code
xmlTextReader.Close();
stream.Close();
}
}
catch (Exception exception)
{
EventLog.WriteEntry("Application", exception.ToString(), EventLogEntryType.Error);
}
stream.close()是在你的code.using冗餘會爲你做 –
@CodeIgnoto是正確的,也'XmlTextReader'實現'的IDi一次性「,所以你可以用''''來包裝它。 – James
@CodeIgnoto - 是的,我知道我已經刪除了該代碼。 – Punit