조회 수 12656 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

System.IO.FileSystemWatcher를 사용하면 됨

 

[예제 1]

 

public static Watch() 
{
    var watch = new FileSystemWatcher();
    watch.Path = @"D:\tmp";
    watch.Filter = "file.txt";
    watch.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite; //more options
    watch.Changed += new FileSystemEventHandler(OnChanged);
    watch.EnableRaisingEvents = true;
}

/// Functions:
private static void OnChanged(object source, FileSystemEventArgs e)
{
    if(e.FullPath == @"D:\tmp\file.txt")
    {
        // do stuff
    }
}

 

 

[예제 2]

 

FileSystemWatcher fs = new FileSystemWatcher();//개체 생성
fs.Path = "Test"; //Test 폴더 감시
fs.NotifyFilter = NotifyFilters.FileName|NotifyFilters.DirectoryName; //파일 이름과 폴더 이름 감시
fs.Filter = ""; //특정 파일 감시 ex)*.exe,(모두 감시"", *.*)
fs.Created += new FileSystemEventHandler(fs_Created); //조건에 해당하는 파일 및 폴더의 생성 이벤트 등록
fs.Deleted+=new FileSystemEventHandler(fs_Deleted); //조건에 해당하는 파일 및 폴더의 삭제 이벤트 등록
fs.EnableRaisingEvents = true; //이벤트 활성화

testeventhandler += new mydele(Form1_testeventhandler);

 

 [예제 3]


다음 예제에서는 런타임에 지정된 디렉터리를 조사하는 FileSystemWatcher를 만듭니다. 구성 요소는 디렉터리에 있는 텍스트 파일의 LastWriteLastAccess 시간 변경, 작성, 삭제 또는 이름 변경을 조사하도록 설정됩니다. 파일이 변경, 작성 또는 삭제되면 해당 파일의 경로가 콘솔에 출력됩니다. 파일 이름이 변경되면 콘솔에 이전 경로와 새 경로가 출력됩니다.


public class Watcher
{

    public static void Main()
    {
	Run();

    }

    [PermissionSet(SecurityAction.Demand, Name="FullTrust")]
    public static void Run()
    {
        string[] args = System.Environment.GetCommandLineArgs();
 
        // If a directory is not specified, exit program.
        if(args.Length != 2)
        {
            // Display the proper way to call the program.
            Console.WriteLine("Usage: Watcher.exe (directory)");
            return;
        }

        // Create a new FileSystemWatcher and set its properties.
        FileSystemWatcher watcher = new FileSystemWatcher();
        watcher.Path = args[1];
        /* Watch for changes in LastAccess and LastWrite times, and 
           the renaming of files or directories. */
        watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite 
           | NotifyFilters.FileName | NotifyFilters.DirectoryName;
        // Only watch text files.
        watcher.Filter = "*.txt";

        // Add event handlers.
        watcher.Changed += new FileSystemEventHandler(OnChanged);
        watcher.Created += new FileSystemEventHandler(OnChanged);
        watcher.Deleted += new FileSystemEventHandler(OnChanged);
        watcher.Renamed += new RenamedEventHandler(OnRenamed);

        // Begin watching.
        watcher.EnableRaisingEvents = true;

        // Wait for the user to quit the program.
        Console.WriteLine("Press \'q\' to quit the sample.");
        while(Console.Read()!='q');
    }

    // Define the event handlers.
    private static void OnChanged(object source, FileSystemEventArgs e)
    {
        // Specify what is done when a file is changed, created, or deleted.
       Console.WriteLine("File: " +  e.FullPath + " " + e.ChangeType);
    }

    private static void OnRenamed(object source, RenamedEventArgs e)
    {
        // Specify what is done when a file is renamed.
        Console.WriteLine("File: {0} renamed to {1}", e.OldFullPath, e.FullPath);
    }
}




Dreamy의 코드 스크랩

내가 모으고 내가 보는

List of Articles
번호 분류 제목 날짜 조회 수 추천 수
416 일반 cmd.exe 쉘 환경변수 추출 및 처리 2014.03.20 11770 0
415 개념 CMLA (Content Management Licensing Administrator) DRM 2012.03.30 15594 0
414 Python collections.counter() 함수 2014.04.30 14212 0
413 일반 Common LDAP Queries 2015.05.13 6209 0
412 Android CPU사용률은 /proc/stat를 참고 2013.05.07 30710 0
411 LINUX CR, LF, ^M - vi로 DOS<->UNIX 줄바꿈 전환 2014.07.14 37703 0
410 개념 CSFB와 SVLTE (Circuit Switched Fall-Back & Simultaneous Voice and LTE) 2012.04.23 24467 0
409 일반 CSS 참고 사이트 2012.06.05 15526 0
408 MFC Cstring methods 2009.04.21 55189 0
407 MFC CString 에서 형변환 함수들 총정리 2010.11.29 102986 0
406 MFC CString을 유니코드로 변환 WCHAR에 저장하는 방법 1 2006.04.14 57006 0
405 MFC CTree Ctrl 맴버 요약 2010.06.24 42260 0
404 업무 CTS 테스트 가이드 secret 2015.01.02 0 0
403 C C언어용 문자열 replaceAll 함수 2009.02.09 38518 0
402 C C에서 파일 존재여부 체크 (check file exist) 2019.07.02 18645 0
목록
Board Pagination ‹ Prev 1 2 3 4 5 6 7 8 9 10 11 ... 34 Next ›
/ 34

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5