> 백엔드 개발 > C++ > C#에서 파일 변경 사항을 어떻게 모니터링할 수 있나요?

C#에서 파일 변경 사항을 어떻게 모니터링할 수 있나요?

Linda Hamilton
풀어 주다: 2025-01-13 09:56:12
원래의
248명이 탐색했습니다.

How Can I Monitor File Changes in C#?

C#에서 파일 변경 모니터링

문제: 디스크의 파일 수정을 감지하는 메커니즘을 찾고 있습니다.

답변: FileSystemWatcher 클래스는 안정적인 솔루션을 제공합니다.

지침:

FileSystemWatcher 클래스는 지정된 디렉터리의 파일 변경 사항을 모니터링합니다. 변경이 발생하면 원하는 작업을 수행하기 위해 처리할 수 있는 이벤트가 발생합니다. 다음 코드는 FileSystemWatcher 사용 방법을 보여줍니다.

<code class="language-csharp">public void CreateFileWatcher(string path)
{
    // 创建 FileSystemWatcher 实例并配置其属性
    FileSystemWatcher watcher = new FileSystemWatcher();
    watcher.Path = path;
    watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
       | NotifyFilters.FileName | NotifyFilters.DirectoryName;
    watcher.Filter = "*.txt";

    // 添加事件处理程序
    watcher.Changed += new FileSystemEventHandler(OnChanged);
    watcher.Created += new FileSystemEventHandler(OnChanged);
    watcher.Deleted += new FileSystemEventHandler(OnChanged);
    watcher.Renamed += new RenamedEventHandler(OnRenamed);

    // 开始监控
    watcher.EnableRaisingEvents = true;
}

private static void OnChanged(object source, FileSystemEventArgs e)
{
    // 定义在更改、创建或删除文件时要执行的操作
    Console.WriteLine("文件: " + e.FullPath + " " + e.ChangeType);
}

private static void OnRenamed(object source, RenamedEventArgs e)
{
    // 定义在文件重命名时要执行的操作
    Console.WriteLine("文件: {0} 重命名为 {1}", e.OldFullPath, e.FullPath);
}</code>
로그인 후 복사

이 예에서는 모니터가 특정 경로의 텍스트 파일(*.txt)에 대한 변경 사항을 모니터링하도록 구성되었습니다. 해당 경로 내의 파일이 변경, 생성, 삭제되거나 이름이 바뀌면 해당 이벤트 핸들러가 호출되어 이벤트 기록 또는 애플리케이션 상태 업데이트와 같은 적절한 조치를 취할 수 있습니다.

위 내용은 C#에서 파일 변경 사항을 어떻게 모니터링할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿