FileSystemWatcher Konstruktor
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menginisialisasi instans baru kelas FileSystemWatcher.
Overload
FileSystemWatcher() |
Menginisialisasi instans baru kelas FileSystemWatcher. |
FileSystemWatcher(String) |
Menginisialisasi instans FileSystemWatcher baru kelas, mengingat direktori yang ditentukan untuk dipantau. |
FileSystemWatcher(String, String) |
Menginisialisasi instans FileSystemWatcher baru kelas, mengingat direktori dan jenis file yang ditentukan untuk dipantau. |
FileSystemWatcher()
- Sumber:
- FileSystemWatcher.cs
- Sumber:
- FileSystemWatcher.cs
- Sumber:
- FileSystemWatcher.cs
Menginisialisasi instans baru kelas FileSystemWatcher.
public:
FileSystemWatcher();
public FileSystemWatcher ();
Public Sub New ()
Contoh
Contoh berikut membuat FileSystemWatcher objek untuk watch direktori yang ditentukan pada durasi. Objek FileSystemWatcher mengawasi perubahan dan LastWrite
LastAccess
waktu, dan untuk pembuatan, penghapusan, atau penggantian nama file teks di direktori. Jika file diubah, dibuat, atau dihapus, jalur ke file akan ditampilkan ke konsol. Saat file diganti namanya, jalur lama dan baru ditampilkan ke konsol.
Contoh ini menggunakan System.Diagnostics namespace layanan dan System.IO .
#include "pch.h"
using namespace System;
using namespace System::IO;
class MyClassCPP
{
public:
int static Run()
{
FileSystemWatcher^ watcher = gcnew FileSystemWatcher("C:\\path\\to\\folder");
watcher->NotifyFilter = static_cast<NotifyFilters>(NotifyFilters::Attributes
| NotifyFilters::CreationTime
| NotifyFilters::DirectoryName
| NotifyFilters::FileName
| NotifyFilters::LastAccess
| NotifyFilters::LastWrite
| NotifyFilters::Security
| NotifyFilters::Size);
watcher->Changed += gcnew FileSystemEventHandler(MyClassCPP::OnChanged);
watcher->Created += gcnew FileSystemEventHandler(MyClassCPP::OnCreated);
watcher->Deleted += gcnew FileSystemEventHandler(MyClassCPP::OnDeleted);
watcher->Renamed += gcnew RenamedEventHandler(MyClassCPP::OnRenamed);
watcher->Error += gcnew ErrorEventHandler(MyClassCPP::OnError);
watcher->Filter = "*.txt";
watcher->IncludeSubdirectories = true;
watcher->EnableRaisingEvents = true;
Console::WriteLine("Press enter to exit.");
Console::ReadLine();
return 0;
}
private:
static void OnChanged(Object^ sender, FileSystemEventArgs^ e)
{
if (e->ChangeType != WatcherChangeTypes::Changed)
{
return;
}
Console::WriteLine("Changed: {0}", e->FullPath);
}
static void OnCreated(Object^ sender, FileSystemEventArgs^ e)
{
Console::WriteLine("Created: {0}", e->FullPath);
}
static void OnDeleted(Object^ sender, FileSystemEventArgs^ e)
{
Console::WriteLine("Deleted: {0}", e->FullPath);
}
static void OnRenamed(Object^ sender, RenamedEventArgs^ e)
{
Console::WriteLine("Renamed:");
Console::WriteLine(" Old: {0}", e->OldFullPath);
Console::WriteLine(" New: {0}", e->FullPath);
}
static void OnError(Object^ sender, ErrorEventArgs^ e)
{
PrintException(e->GetException());
}
static void PrintException(Exception^ ex)
{
if (ex != nullptr)
{
Console::WriteLine("Message: {0}", ex->Message);
Console::WriteLine("Stacktrace:");
Console::WriteLine(ex->StackTrace);
Console::WriteLine();
PrintException(ex->InnerException);
}
}
};
int main()
{
MyClassCPP::Run();
}
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);
}
}
}
}
Imports System.IO
Namespace MyNamespace
Class MyClassVB
Shared Sub Main()
Using watcher = New FileSystemWatcher("C:\path\to\folder")
watcher.NotifyFilter = NotifyFilters.Attributes Or
NotifyFilters.CreationTime Or
NotifyFilters.DirectoryName Or
NotifyFilters.FileName Or
NotifyFilters.LastAccess Or
NotifyFilters.LastWrite Or
NotifyFilters.Security Or
NotifyFilters.Size
AddHandler watcher.Changed, AddressOf OnChanged
AddHandler watcher.Created, AddressOf OnCreated
AddHandler watcher.Deleted, AddressOf OnDeleted
AddHandler watcher.Renamed, AddressOf OnRenamed
AddHandler watcher.Error, AddressOf OnError
watcher.Filter = "*.txt"
watcher.IncludeSubdirectories = True
watcher.EnableRaisingEvents = True
Console.WriteLine("Press enter to exit.")
Console.ReadLine()
End Using
End Sub
Private Shared Sub OnChanged(sender As Object, e As FileSystemEventArgs)
If e.ChangeType <> WatcherChangeTypes.Changed Then
Return
End If
Console.WriteLine($"Changed: {e.FullPath}")
End Sub
Private Shared Sub OnCreated(sender As Object, e As FileSystemEventArgs)
Dim value As String = $"Created: {e.FullPath}"
Console.WriteLine(value)
End Sub
Private Shared Sub OnDeleted(sender As Object, e As FileSystemEventArgs)
Console.WriteLine($"Deleted: {e.FullPath}")
End Sub
Private Shared Sub OnRenamed(sender As Object, e As RenamedEventArgs)
Console.WriteLine($"Renamed:")
Console.WriteLine($" Old: {e.OldFullPath}")
Console.WriteLine($" New: {e.FullPath}")
End Sub
Private Shared Sub OnError(sender As Object, e As ErrorEventArgs)
PrintException(e.GetException())
End Sub
Private Shared Sub PrintException(ex As Exception)
If ex IsNot Nothing Then
Console.WriteLine($"Message: {ex.Message}")
Console.WriteLine("Stacktrace:")
Console.WriteLine(ex.StackTrace)
Console.WriteLine()
PrintException(ex.InnerException)
End If
End Sub
End Class
End Namespace
Keterangan
Anda tidak dapat watch komputer jarak jauh yang tidak memiliki Windows NT atau Windows 2000. Anda tidak dapat watch komputer Windows NT 4.0 jarak jauh dari komputer Windows NT 4.0.
Tabel berikut ini memperlihatkan nilai properti awal untuk instans FileSystemWatcher.
Properti | Nilai Awal |
---|---|
NotifyFilter | bitwise OR kombinasi dari LastWrite , FileName , dan DirectoryName |
EnableRaisingEvents | false |
Filter | "*.*" (Tonton semua file.) |
IncludeSubdirectories | false |
InternalBufferSize | 8192 |
Path | string kosong ("") |
Catatan
Komponen tidak akan watch direktori yang ditentukan hingga Path ditetapkan, dan EnableRaisingEvents adalah true
.
Lihat juga
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes
Berlaku untuk
FileSystemWatcher(String)
- Sumber:
- FileSystemWatcher.cs
- Sumber:
- FileSystemWatcher.cs
- Sumber:
- FileSystemWatcher.cs
Menginisialisasi instans FileSystemWatcher baru kelas, mengingat direktori yang ditentukan untuk dipantau.
public:
FileSystemWatcher(System::String ^ path);
public FileSystemWatcher (string path);
new System.IO.FileSystemWatcher : string -> System.IO.FileSystemWatcher
Public Sub New (path As String)
Parameter
- path
- String
Direktori yang akan dipantau, dalam notasi standar atau Universal Naming Convention (UNC).
Pengecualian
Parameternya path
adalah null
.
Parameter path
adalah string kosong ("").
-atau-
Jalur yang ditentukan melalui path
parameter tidak ada.
path
terlalu panjang.
Keterangan
Catatan
Komponen tidak akan watch direktori yang ditentukan hingga Path ditetapkan, dan EnableRaisingEvents adalah true
.
Komponen dapat watch berkas pada komputer pribadi, kandar jaringan, atau komputer jarak jauh.
Anda tidak dapat watch komputer jarak jauh yang tidak memiliki Windows NT atau Windows 2000. Anda tidak dapat watch komputer Windows NT 4.0 jarak jauh dari komputer Windows NT 4.0. Properti Filter diatur secara default untuk watch semua file.
Lihat juga
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- Filter
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes
Berlaku untuk
FileSystemWatcher(String, String)
- Sumber:
- FileSystemWatcher.cs
- Sumber:
- FileSystemWatcher.cs
- Sumber:
- FileSystemWatcher.cs
Menginisialisasi instans FileSystemWatcher baru kelas, mengingat direktori dan jenis file yang ditentukan untuk dipantau.
public:
FileSystemWatcher(System::String ^ path, System::String ^ filter);
public FileSystemWatcher (string path, string filter);
new System.IO.FileSystemWatcher : string * string -> System.IO.FileSystemWatcher
Public Sub New (path As String, filter As String)
Parameter
- path
- String
Direktori yang akan dipantau, dalam notasi standar atau Universal Naming Convention (UNC).
- filter
- String
Jenis file yang akan watch. Misalnya, "*.txt" mengawasi perubahan pada semua file teks.
Pengecualian
Parameter path
adalah string kosong ("").
-atau-
Jalur yang ditentukan melalui path
parameter tidak ada.
path
terlalu panjang.
Keterangan
Catatan
Komponen tidak akan watch direktori yang ditentukan hingga Path ditetapkan, dan EnableRaisingEvents adalah true
.
Komponen dapat watch berkas pada komputer pribadi, kandar jaringan, atau komputer jarak jauh.
Anda tidak dapat watch komputer jarak jauh yang tidak memiliki Windows NT atau Windows 2000. Anda tidak dapat watch komputer Windows NT 4.0 jarak jauh dari komputer Windows NT 4.0.
Lihat juga
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- Filter
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes