zoukankan      html  css  js  c++  java
  • C# Monitor and transfer or copy the changed or created file to a new location

    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Diagnostics;
    
    namespace ConsoleApplication3
    {
        class Program
        {
            static void Main(string[] args)
            {
                MonitorAndTransferFiles();
                Console.ReadLine();       
            }
    
            static string destPath = @"D:CConsoleApplication2ConsoleApplication2";
    
            static void MonitorAndTransferFiles(string sourcePath=null)
            {
                sourcePath = Directory.GetCurrentDirectory();            
                WatchFiles(sourcePath);            
            }       
    
            static void WatchFiles(string path)
            {
                FileSystemWatcher watcher = new FileSystemWatcher();
                watcher.Path = path;
                watcher.NotifyFilter = NotifyFilters.LastWrite|NotifyFilters.CreationTime;
                watcher.Filter = "*.*";
                watcher.Changed += Watcher_Changed;
                watcher.Created += Watcher_Created;
                watcher.EnableRaisingEvents = true;
            }
    
            private static void Watcher_Created(object sender, FileSystemEventArgs e)
            {
                try
                {
                    Console.WriteLine($"Created:FullPath:{e.FullPath}, ChangeType: {e.ChangeType}");
                    File.Copy(e.FullPath, Path.Combine(destPath, Path.GetFileName(e.FullPath)), true);
                }
                catch
                {
                }           
            }
    
            private static void Watcher_Changed(object sender, FileSystemEventArgs e)
            {
                try
                {
                    Console.WriteLine($"Changed:FullPath:{e.FullPath}, ChangeType: {e.ChangeType}");
                    File.Copy(e.FullPath, Path.Combine(destPath, Path.GetFileName(e.FullPath)), true);
                }
                catch
                {
                }
                
            } 
        }
    }
  • 相关阅读:
    JS中attribute和property的区别
    px(像素)、pt(点)、ppi、dpi、dp、sp之间的关系
    计算几何
    动态凸包
    斜率DP题目
    斜率DP个人理解
    后缀数组题目
    CF#190DIV.1
    MANACHER---求最长回文串
    扩展KMP题目
  • 原文地址:https://www.cnblogs.com/Fred1987/p/11971370.html
Copyright © 2011-2022 走看看