Основы C# Урок 59. Класс FileSystemWatcher
Класс FileSystemWatcher из пространства имен System.IO
предназначен для отслеживания изменений в файловой системе.
Изменения можно отслеживать как на локальном компьютере, так и
на удаленном.
Вот пример использования этого класса. // Подключем нужное пространство имен.
using System.IO;
class Class1
{
static void Main(string[] args)
{
// Будем следить за папкой "c:\tmp".
FileSystemWatcher watcher = new FileSystemWatcher(@"c:\tmp");
// Следим за изменением имени файлов.
watcher.NotifyFilter = NotifyFilters.FileName;
// Добавляем обработчик для события переименования файла.
watcher.Renamed += new RenamedEventHandler(OnRenamed);
// Начинаем слежение.
watcher.EnableRaisingEvents = true;
// Следим, пока пользователь не нажал q.
Console.WriteLine("Press 'q' to exit");
while(Console.Read()!='q');
}
// Обработчик для события переименования файла.
private static void OnRenamed(object source, RenamedEventArgs e)
{
Console.WriteLine("{0} renamed to {1}", e.OldName, e.Name);
}
}
Как вы видите, схема действий тут такая - сначала мы
указываем, за чем именно мы хотим следить (за какой папкой, за
какими файлами и за какими событиями для этих файлов). Потом
мы указываем, что за метод будет выполняться при наступлении
того или иного события. Разумеется, этот метод должен быть в
нашей программе, причем он должен иметь определенную
сигнатуру.
Конкретно в нашем примере мы будем отслеживать
переименование для всех файлов в папке "c:\tmp". |