.NET Tip: Receive Notification When a File is Updated San Francisco CA

Do you need to know when a file or directory has been updated? The FileSystemWatcher class gives you a very easy means to monitor the file system.

Local Companies

Microsoft Corporation
(415) 972-6400
835 Market St., Ste. 700
San Francisco, CA
San Francisco Technologies, Inc.
(866) 992-2543
123 10th St.
San Francisco, CA
Streetline Networks
(650) 714-5528
995 Market St., 16th Flr.
San Francisco, CA
Tierra Technology
(415) 386-2866
833 Market St., 10th Flr.
San Francisco, CA
21Tech
(415) 355-9090
1390 Market St., Ste. 1202
San Francisco, CA
ClearKite
(866) 894-8090
355 Berry St., Ste. 240
San Francisco, CA
Speller & Company LLC
415-848-3022
795 Folsom Street
San Francisco, CA
MAAI - Media Application & Architecture Inc.
(415) 282-0419
PO Box 31636
San Francisco, CA
Propertyware
(415) 455-2400
575 Market St., Ste. 375
San Francisco, CA
International Business Machines Corporation
(415) 545-2000
425 Market St.
San Francisco, CA

provided by: 
Originally published at Internet.com


.NET Tip: Receive Notification When a File is Updated

Using the FileSystemWatcher class provides you with a very simple but flexible way to monitor the file system. It can be used to monitor directories, individual files, or groups of files. It also can be configured only to notify your application of certain types of changes. For this example, I'll show you a class that watches for changes in the LastWrite property of a specific file. I use this class to watch for changes in text files that contain the body of an email message that is sent when the status of your system changes. When one of these text files changes, the application can detect the change and cache the new contents of the file. Here is what the class looks like: public class MessageFileWatcher { public MessageFileWatcher(string Path, string FileName) { FileSystemWatcher Watcher = new FileSystemWatcher(); Watcher.Path = Path; Watcher.Filter = FileName; Watcher.NotifyFilter = NotifyFilters.LastWrite; Watcher.Changed += new FileSystemEventHandler(OnChanged); Watcher.EnableRaisingEvents = true; } private void OnChanged(object source, FileSystemEventArgs e) { // Do something here based on the change to the file } }

The constructor for my MessageFileWatcher class takes the path to the directory where the file is stored as well as the specific file name as parameters. A new FileSystemWatcher variable is created and the Path and Filter properties are set to the parameters passed into the constructor. Next, the NotifyFilter property is set to indicate the type of change which is of interest. In this case, I want to be notified every time the file is written, so I am using LastWrite. I then hook one of my methods into the Changed event of the FileSystem Watcher and enable it to raise events. I've included the OnChanged event handler for completeness, but the code in this method will depend upon your application. That is all there is to it. Here is an example usage of the MessageFileWatcher class: MessageFileWatcher WarningMessage = new MessageFileWatcher(@"C:\MyApp", "MyApp.Warning.msg"); MessageFileWatcher AlertMessage = new MessageFileWatcher(@"C:\MyApp", "MyApp.Alert.msg");

This provides a simple way to monitor the files used by your application. You may want to further explore the Filter and NotifyFilter properties as well as the various events available to make best use of the FileSystemWatcher class.

About the Author

Jay Miller is a Software Engineer with Electronic Tracking Systems, a company dedicated to robbery prevention, apprehension, and recovery based in Carrollton, Texas. Jay has been working with .NET since the release of the first beta and is co-author of Learn Microsoft Visual Basic.Net In a Weekend. Jay can be reached via email at jmiller@sm-ets.com.

Author: Jay Miller

Read article at Internet.com site

Featured Local Company

Microsoft Corporation

(415) 972-6400
835 Market St., Ste. 700
San Francisco, CA

Related Local Events
MACWORLD 2010
Dates: 1/4/2010 - 1/8/2010
Location: Moscone Convention Center
San Francisco, CA
View Details

Informex USA
Dates: 2/16/2010 - 2/19/2010
Location: Moscone Convention Center, San Francisco
San Francisco, CA
View Details

Advanced Lithography
Dates: 2/21/2010 - 2/26/2010
Location: San Jose Convention Center
San Jose, CA
View Details

Contraceptive Technology Conference : San Francisco
Dates: 3/24/2010 - 3/27/2010
Location: Hyatt Regency Hotel
San Francisco, CA
View Details

Web 2.0 Summit
Dates: 10/20/2009 - 10/22/2009
Location: Westin San Francisco Market Street
San Francisco, CA
View Details