¿Qué es el FileSystemWatcher?

En ocasiones al realizar un desarrollo que requiera que ser automatizado totalmente sin necesidad de adecuarlo para nuevas implementaciones que se requieran dependiendo de las necesidades del usuario, es indispensable contar con algún método que se encuentre “monitoreando” constantemente archivos para que cuando estos cambien, automáticamente el sistema los pueda incluir.

Y esto podemos lograrlo implementando las siguientes instrucciones:

  1. Creamos una instancia de FileSystemWatcher

 

FSWatcher = new FileSystemWatcher();

 

  1. Especificamos la ruta donde se encuentra el archivo XML

FSWatcher.Path = path;

 

  1. Incluimos las siguientes configuraciones:

 

FSWatcher.IncludeSubdirectories = true;

FSWatcher.EnableRaisingEvents = true;

 

  1. Definimos los eventos para saber que se tiene que realizar dependiendo de qué acción haya sido aplicada al archivo XML.

 

Creación:

 

FSWatcher.Created+=new FileSystemEventHandler(FSWatcher_Created);

 

Se produce cuando se crea un archivo o un directorio en la ruta de acceso indicada en la propiedad Path especificada.

 

Borrado:

 

FSWatcher.Deleted+=new FileSystemEventHandler(FSWatcher_Deleted);

 

Se produce cuando se elimina un archivo o un directorio de la ruta de acceso indicada en la ruta especificada.

 

Cambio en el archivo:

 

FSWatcher.Changed+=new FileSystemEventHandler(FSWatcher_Changed);

 

Se produce cuando cambia un archivo o un directorio incluido en la ruta de acceso indicada en la ruta especificada.

Renamed:

 

FSWatcher.Renamed+=new RenamedEventHandler(FSWatcher_Renamed);

 

Se produce cuando se cambia de nombre un archivo o un directorio de la ruta de acceso indicada en la ruta especificada.

  1. Implementamos:

private void FSWatcher_Created(object sender, System.IO.FileSystemEventArgs e)

{

//Especificamos las acciones que queremos que se realicen con la creación del archivo

}

 

Con este funcionamiento nosotros podemos crear un componente para inspeccionar archivos en un equipo local, una unidad de red o un equipo remoto y realizar determinadas acciones dependiendo del cambio que tuvo el archivo.

Share: