1

如何检查新创建的文件。这仅适用于已编辑的文件。

        DateTime time = DateTime.Now;             // Use current time
        string format = "dMyyyy";            // Use this format
        string s = time.ToString(format); 



        fileSystemWatcher1.Path = @"C:\Users\Desktop\test\";
        fileSystemWatcher1.NotifyFilter =   NotifyFilters.LastAccess | 
                                            NotifyFilters.LastWrite | 
                                            NotifyFilters.FileName | 
                                            NotifyFilters.DirectoryName;

        fileSystemWatcher1.IncludeSubdirectories = false;
        fileSystemWatcher1.Filter = s + ".txt";
4

4 回答 4

1

您也可以NotifyFilters.CreationTime用于新创建的文件。

NotifyFilters 枚举

于 2012-10-12T16:12:17.853 回答
1

MSDN页面对此非常清楚

// Add event handlers.
fileSystemWatcher1.Created += new FileSystemEventHandler(OnChanged);

// Enable the event to be raised
fileSystemWatcher1.EnableRaisingEvents = true;

// In the event handler check the change type
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);
}

正如您从其他页面中看到的那样,e。ChangeType枚举包含一个 Created 值

于 2012-10-12T16:15:03.307 回答
1

按照本文C# 中概述的示例:使用 FileSystem Watcher 监视文件或目录的应用程序

您需要描述fileSystemWatcher1.NotifyFilter通过将不同的事件处理程序分配给不同的活动来更改这些属性之一时必须执行的操作。例如:

fileSystemWatcher1.Changed += new FileSystemEventHandler(OnChanged);
fileSystemWatcher1.Created += new FileSystemEventHandler(OnChanged);
fileSystemWatcher1.Deleted += new FileSystemEventHandler(OnChanged);
fileSystemWatcher1.Renamed += new RenamedEventHandler(OnRenamed);

两个处理程序的签名为

void OnChanged(object sender, FileSystemEventArgs e)
void OnRenamed(object sender, RenamedEventArgs e)

示例处理程序OnChanged

public static void OnChanged(object source, FileSystemEventArgs e)
{
   Console.WriteLine("{0} : {1} {2}", s, e.FullPath, e.ChangeType);
}

然后让观察者引发事件:

fileSystemWatcher1EnableRaisingEvents = true;
于 2012-10-12T16:16:50.600 回答
0

如果您为 fileSystemWatcher1.Created 添加了事件处理程序,上述内容应该可以工作

于 2012-10-12T16:19:39.337 回答