Я пытаюсь узнать, есть ли новые файлы, созданные в данном каталоге. У меня есть следующий код:Обнаружить, если есть новые файлы, созданные в папке с помощью FileWatcher
private static void CreateWatcher()
{
//Create a new FileSystemWatcher.
FileSystemWatcher watcher = new FileSystemWatcher();
//Set the filter to all files.
watcher.Filter = "*.*";
//Subscribe to the Created event.
watcher.Created += new FileSystemEventHandler(watcher_FileCreated);
//Set the path
watcher.Path = path;
//Enable the FileSystemWatcher events.
watcher.EnableRaisingEvents = true;
}
private static void watcher_FileCreated(object sender, FileSystemEventArgs e)
{
Console.WriteLine("Nuevo archivo creado -> " + e.Name);
}
public static void Main(string[] args)
{
CreateWatcher();
CreateFiles();
Console.Read();
}
В "CreatedFiles()" функции, я создаю на путь 3 новых файлов (1 на молнии и 2 TXT). Он обнаруживает мне 2 txt-файла, но не то же самое с zip-файлом. Как я могу это решить?
Спасибо!
Я думаю, что, так как 'watcher' является локальным в методе, он получает GCed и прекращает пропагандистские мероприятия. 'Console.Read' также может блокировать' Console.WriteLine'. – vcsjones
он отлично работает на моей стороне. Можете ли вы поделиться кодом CreateFiles? Может быть, вы используете нить или что-то, что не записывает файл? –
Теперь он отображает файл tmp. Почему это так? –