반응형

* 파일 및 폴더 감시 예제...

 

메인화면

Form1.cs

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

//FileSystemWatcher Filter 를 쓰기 위해 선언...
using System.IO;

namespace CSharp_FFWatcher
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            //폴더 및 모든 파일 감시....
            FolderBrowserDialog fbd = new FolderBrowserDialog();

            if (fbd.ShowDialog() == DialogResult.OK)
            {
                fileSystemWatcher1.Path = fbd.SelectedPath;
                label3.Text = fbd.SelectedPath;
                //모든 파일 감시 ...
                //Ex) *.txt 모든 텍스트 파일 감시...
                fileSystemWatcher1.Filter = "*.*";
                fileSystemWatcher1.NotifyFilter = NotifyFilters.DirectoryName | NotifyFilters.Size | NotifyFilters.FileName;
                
            }
        }


        private void fileSystemWatcher1_Created(object sender, FileSystemEventArgs e)
        {
            //파일 및 폴더가 생성 되면 이벤트 발생...
            label5.Text = e.FullPath + ", " + e.Name + " Create Complete.";
        }

        private void fileSystemWatcher1_Deleted(object sender, FileSystemEventArgs e)
        {
            //파일 및 폴더가 삭제 되면 이벤트 발생...
            label5.Text = e.FullPath + ", " + e.Name + " Delete Complete.";
        }

        private void fileSystemWatcher1_Renamed(object sender, RenamedEventArgs e)
        {
            //파일 및 폴더가 이름이 바뀌게 되면 이벤트 발생...
            label5.Text = e.FullPath + ", " + e.Name + " Change Complete";
        }

        private void fileSystemWatcher1_Changed(object sender, FileSystemEventArgs e)
        {
            label5.Text = e.FullPath + ", " + e.Name + " Change Complete";
        }
      
    }
}

 

* 예제 결과

 - 파일 크기가 변경 되거나 수정 되었을 경우

 

위와 같이 txt 파일이 7kb 이며 안에 내용이 수정 되었을 때 이벤트 발생

 

 - 폴더가 생성 되거나 삭제 되었을 경우

 

반응형

'C# Programming' 카테고리의 다른 글

[C#] File CheckSum 예제 (MD5 Checksum)  (0) 2019.10.16
[C#] Log File - 로그 작성 예제  (0) 2019.10.14
[C#] File Copy (파일 복사 예제)  (0) 2019.10.08
[C#] 프로그램 중복 실행 방지  (0) 2019.10.06
[C#] Delay 함수  (0) 2019.10.04

+ Recent posts