当在一个目录中创建一个文件(FileSystemWatcher_Created
)时,我将它复制到另一个目录。但是当我创建一个大的(> 10MB)文件时,它无法复制文件,因为它已经开始复制了,当文件还没有完成创建时..。
这将导致 无法复制该文件,因为它被另一个进程使用升高
有人帮忙吗?
class Program
{
static void Main(string[] args)
{
string path = @"D:\levan\FolderListenerTest\ListenedFolder";
FileSystemWatcher listener;
listener = new FileSystemWatcher(path);
listener.Created += new FileSystemEventHandler(listener_Created);
listener.EnableRaisingEvents = true;
while (Console.ReadLine() != "exit") ;
}
public static void listener_Created(object sender, FileSystemEventArgs e)
{
Console.WriteLine
(
"File Created:\n"
+ "ChangeType: " + e.ChangeType
+ "\nName: " + e.Name
+ "\nFullPath: " + e.FullPath
);
File.Copy(e.FullPath, @"D:\levan\FolderListenerTest\CopiedFilesFolder\" + e.Name);
Console.Read();
}
}