C#学习教程:文件夹事件中的新文件新文件放在该文件夹中,软件需要读取和处理它。如果文件夹中没有文件,软件不应只是等待下一个文件。示例文件(action1.txt)内容(1+1)软件正在处理(1+1),将答案(2)保存到另一个文件夹并从“C:\Actions”文件夹中删除文件(action1.txt)。我知道如何读取文件并处理它们。我无法理解当文件夹中有新文件时如何触发软件以及如何在不使用太多内存或导致内存泄漏的情况下全天候运行软件24/7。.直到现在我已经在原始循环中使用它,每次60秒(睡眠)我正在检查文件夹中的新文件。那是无用的,而且效果不佳。如果有人可以帮助我了解如何提高效率,我会很高兴。非常感谢您参加本课程http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher(v=vs.110).aspx,您可以开始了。它具有所需的事件。使用FileSystemWatcher该页面的一个示例://创建一个新的FileSystemWatcher并设置其属性。FileSystemWatcher观察者=newFileSystemWatcher();watcher.Path="C:\Actions";/*观察LastAccess和LastWrite时间的变化,以及文件或目录的重命名。*/watcher.NotifyFilter=NotifyFilters.LastAccess|通知过滤器.LastWrite|NotifyFilters.文件名|NotifyFilters.DirectoryName;//只看文本文件。watcher.Filter="*.txt";//添加事件处理程序。watcher.Changed+=newFileSystemEventHandler(OnChanged);watcher.Created+=newFileSystemEventHandler(OnChanged);watcher.Deleted+=newFileSystemEventHandler(OnChanged);//开始观看。watcher.EnableRaisingEvents=true;变化的事件://定义事件处理程序。privatestaticvoidOnChanged(objectsource,FileSystemEventArgse){//指定在更改、创建或删除文件时执行的操作。Console.WriteLine("文件:"+e.FullPath+""+e.ChangeType);}但正在使用这门课编程时需要注意一些事项。它不适用于网络驱动器/UNC路径。此外,如果您将大量文件粘贴到一个目录中,它会溢出缓冲区,并且您可能无法获得添加到该文件夹??中的每个文件的事件。查看FileSystemWatcher类:侦听文件系统更改通知并在目录或目录中的文件更改时引发事件。changed当指定路径中的文件或目录发生更改时发生。Created当创建指定路径中的文件或目录时发生。以上就是C#学习教程的全部内容:文件夹事件新增文件共享。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
