Leer en inglés

Compartir a través de


FileSystemWatcher Constructores

Definición

Inicializa una nueva instancia de la clase FileSystemWatcher.

Sobrecargas

FileSystemWatcher()

Inicializa una nueva instancia de la clase FileSystemWatcher.

FileSystemWatcher(String)

Inicializa una nueva instancia de la clase FileSystemWatcher, dado el directorio especificado que se va a supervisar.

FileSystemWatcher(String, String)

Inicializa una nueva instancia de la clase FileSystemWatcher, dado el directorio especificado y el tipo de archivos que se van a supervisar.

FileSystemWatcher()

Source:
FileSystemWatcher.cs
Source:
FileSystemWatcher.cs
Source:
FileSystemWatcher.cs

Inicializa una nueva instancia de la clase FileSystemWatcher.

C#
public FileSystemWatcher ();

Ejemplos

En el ejemplo siguiente se crea un FileSystemWatcher objeto para watch el directorio especificado en tiempo de ejecución. El FileSystemWatcher objeto busca cambios en LastWrite y LastAccess horas, y para la creación, eliminación o cambio de nombre de los archivos de texto en el directorio. Si se cambia, crea o elimina un archivo, la ruta de acceso al archivo se muestra en la consola. Cuando se cambia el nombre de un archivo, las rutas de acceso antiguas y nuevas se muestran en la consola.

En este ejemplo se usan los System.Diagnostics espacios de nombres y System.IO .

C#
using System;
using System.IO;

namespace MyNamespace
{
    class MyClassCS
    {
        static void Main()
        {
            using var watcher = new FileSystemWatcher(@"C:\path\to\folder");

            watcher.NotifyFilter = NotifyFilters.Attributes
                                 | NotifyFilters.CreationTime
                                 | NotifyFilters.DirectoryName
                                 | NotifyFilters.FileName
                                 | NotifyFilters.LastAccess
                                 | NotifyFilters.LastWrite
                                 | NotifyFilters.Security
                                 | NotifyFilters.Size;

            watcher.Changed += OnChanged;
            watcher.Created += OnCreated;
            watcher.Deleted += OnDeleted;
            watcher.Renamed += OnRenamed;
            watcher.Error += OnError;

            watcher.Filter = "*.txt";
            watcher.IncludeSubdirectories = true;
            watcher.EnableRaisingEvents = true;

            Console.WriteLine("Press enter to exit.");
            Console.ReadLine();
        }

        private static void OnChanged(object sender, FileSystemEventArgs e)
        {
            if (e.ChangeType != WatcherChangeTypes.Changed)
            {
                return;
            }
            Console.WriteLine($"Changed: {e.FullPath}");
        }

        private static void OnCreated(object sender, FileSystemEventArgs e)
        {
            string value = $"Created: {e.FullPath}";
            Console.WriteLine(value);
        }

        private static void OnDeleted(object sender, FileSystemEventArgs e) =>
            Console.WriteLine($"Deleted: {e.FullPath}");

        private static void OnRenamed(object sender, RenamedEventArgs e)
        {
            Console.WriteLine($"Renamed:");
            Console.WriteLine($"    Old: {e.OldFullPath}");
            Console.WriteLine($"    New: {e.FullPath}");
        }

        private static void OnError(object sender, ErrorEventArgs e) =>
            PrintException(e.GetException());

        private static void PrintException(Exception? ex)
        {
            if (ex != null)
            {
                Console.WriteLine($"Message: {ex.Message}");
                Console.WriteLine("Stacktrace:");
                Console.WriteLine(ex.StackTrace);
                Console.WriteLine();
                PrintException(ex.InnerException);
            }
        }
    }
}

Comentarios

No se puede watch un equipo remoto que no tenga Windows NT o Windows 2000. No se puede watch un equipo remoto de Windows NT 4.0 desde un equipo Con Windows NT 4.0.

En la tabla siguiente se muestran los valores de propiedad iniciales de una instancia de FileSystemWatcher.

Propiedad Valor inicial
NotifyFilter combinación OR bit a bit de LastWrite, FileNamey DirectoryName
EnableRaisingEvents false
Filter "*.*" (Ver todos los archivos).
IncludeSubdirectories false
InternalBufferSize 8192
Path cadena vacía ("")

Nota

El componente no watch el directorio especificado hasta Path que se establece y EnableRaisingEvents es true.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

FileSystemWatcher(String)

Source:
FileSystemWatcher.cs
Source:
FileSystemWatcher.cs
Source:
FileSystemWatcher.cs

Inicializa una nueva instancia de la clase FileSystemWatcher, dado el directorio especificado que se va a supervisar.

C#
public FileSystemWatcher (string path);

Parámetros

path
String

El directorio que se va a supervisar, en notación de Convención de nomenclatura universal (Universal Naming Convention, UNC) o estándar.

Excepciones

El parámetro path es null.

El parámetro path es una cadena vacía ("").

o bien

La ruta de acceso especificada mediante el parámetro path no existe.

path es demasiado largo.

Comentarios

Nota

El componente no watch el directorio especificado hasta Path que se establece y EnableRaisingEvents es true.

El componente puede watch archivos en su equipo personal, una unidad de red o un equipo remoto.

No se puede watch un equipo remoto que no tenga Windows NT o Windows 2000. No se puede watch un equipo remoto de Windows NT 4.0 desde un equipo Con Windows NT 4.0. La Filter propiedad se establece de forma predeterminada en watch todos los archivos.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

FileSystemWatcher(String, String)

Source:
FileSystemWatcher.cs
Source:
FileSystemWatcher.cs
Source:
FileSystemWatcher.cs

Inicializa una nueva instancia de la clase FileSystemWatcher, dado el directorio especificado y el tipo de archivos que se van a supervisar.

C#
public FileSystemWatcher (string path, string filter);

Parámetros

path
String

El directorio que se va a supervisar, en notación de Convención de nomenclatura universal (Universal Naming Convention, UNC) o estándar.

filter
String

El tipo de archivos que se van a inspeccionar. Por ejemplo, "*.txt" inspecciona cambios en todos los archivos de texto.

Excepciones

El parámetro path es null.

o bien

El parámetro filter es null.

El parámetro path es una cadena vacía ("").

o bien

La ruta de acceso especificada mediante el parámetro path no existe.

path es demasiado largo.

Comentarios

Nota

El componente no watch el directorio especificado hasta Path que se establece y EnableRaisingEvents es true.

El componente puede watch archivos en su equipo personal, una unidad de red o un equipo remoto.

No se puede watch un equipo remoto que no tenga Windows NT o Windows 2000. No se puede watch un equipo remoto de Windows NT 4.0 desde un equipo Con Windows NT 4.0.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1