我的文件观察器事件只读取第一个文件,然后出现以下错误: “错误:System.IO.IOException:进程无法访问文件'D:\ TREE \ Dump \ TF20141004011343313.txt '因为它正在被另一个进程使用。“文件观察器错误
这里是我的代码:
int? msgID;
string dup ="";
try
{
//---------read from file------------
string block;
using (StreamReader sr = File.OpenText(MsgsPath + "\\" + e.Name))
{
block = sr.ReadToEnd();
}
和“使用”应当办理自动开启和关闭,对不对? 然后我用这个代码移动处理的文件:
File.Move(MsgsPath + "\\" + e.Name, MsgsPath + "\\Archive\\" + e.Name);
这完全正常。当您收到FSW事件时,正在更新文件的程序仍在积极使用它。几乎总是需要等待文件完成。你无法预测需要多长时间。将文件路径放入列表中,使用计时器定期尝试打开文件。 – 2014-10-19 10:55:31