關於FileSystemWatcher 類的詳細說明,大家可以去找找CSDN,或者在百度Google上搜下。
至於使用windows服務和.NET FileSystemWatcher對象來監控磁盤文件目錄的改變 我就直接貼代碼,如果有不明白的請大家直接聯繫我,聯繫方式在文章的下面。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using System.IO;
namespace WindowsService
{
partial class FileWatcherService : ServiceBase
{
public FileWatcherService()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
// TODO: 在此處添加代碼以啓動服務。
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Filter = "*.txt";
watcher.IncludeSubdirectories = true; //指示監視是否應包含選定路徑下的目錄
watcher.Created += new FileSystemEventHandler(watcher_FileCreated);
watcher.Deleted += new FileSystemEventHandler(watcher_FileDeleted);
watcher.Changed += new FileSystemEventHandler(watcher_FileChanged);
watcher.Renamed += new RenamedEventHandler(watcher_FileRenamed);
watcher.Path = @"C:\Temp";
watcher.EnableRaisingEvents = true;
}
void watcher_FileCreated(object sender, FileSystemEventArgs e)
{
WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:ss:mm") + " Create File:" + e.Name + " File Path:" + e.FullPath);
}
void watcher_FileDeleted(object sender, FileSystemEventArgs e)
{
WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:ss:mm") + " Delete File:" + e.Name + " File Path:" + e.FullPath);
}
void watcher_FileChanged(object sender, FileSystemEventArgs e)
{
WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:ss:mm") + " Change File:" + e.Name + " File Path:" + e.FullPath);
}
void watcher_FileRenamed(object sender, FileSystemEventArgs e)
{
WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:ss:mm") + " Rename File:" + e.Name + " File Path:" + e.FullPath);
}
private void WriteLog(string message)
{
FileStream fs = new FileStream(@"C:\Log.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite);
StreamWriter sw = new StreamWriter(fs);
sw.BaseStream.Seek(0, SeekOrigin.End);
sw.WriteLine(message);
sw.Close();
}
protected override void OnStop()
{
// TODO: 在此處添加代碼以執行停止服務所需的關閉操作。
}
}
}
使用.NET FileSystemWatcher對象監控磁盤文件目錄的改變
另附廣告:女朋友的淘寶網店,爲她做宣傳,希望大家別介意,http://iyseek.taobao.com 歡迎大家逛逛,嘿嘿!
如有需要幫助,請聯繫MSN:[email protected](上班時在線) QQ:331773812
歡迎大家共同交流!