网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 .NET实现简易的文件增量备份程序
内容
    这篇文章主要介绍了.NET实现简易的文件增量备份程序,需要的朋友可以参考下
    .Net中提供了许多方便使用的方法,包括在处理文件中查找文件、拷贝文件等,今天实现的是通过简易的程序实现增量的备份文件。
    首先需要的是选择备份源文件路径SourcePath和备份目标文件路径DestinationPath,然后通过StopWatch统计拷贝所耗费的时间。(注意:使用StopWatch需要添加 using System.Diagnostics命名空间,对文件的读写需要添加 using System.IO命名空间)。
    /// <summary>
    /// 增量备份函数方法
    /// </summary>
    /// <param name="SourcePath">备份源文件路径</param>
    /// <param name="DestinationPath">备份目标文件路径</param>
    public void CopyDirectory(String SourcePath, String DestinationPath){
      Stopwatch watch = new Stopwatch();
      watch.Start();   //开始计算时间
      // 检查目标目录是否以目录分割字符结束如果不是则添加
      if (DestinationPath[DestinationPath.Length - 1] != Path.DirectorySeparatorChar)
      {
       DestinationPath += Path.DirectorySeparatorChar;
      }
      //判断目标目录是否存在如果不存在则新建
      if (!Directory.Exists( DestinationPath))
      {
       Directory.CreateDirectory(DestinationPath);
      }
      // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
      string[] fileList = Directory.GetFileSystemEntries(SourcePath);
      // 遍历所有的文件和目录
      foreach (string SourceFilename in fileList)
       {
        string filename = Path.GetFileName(SourceFilename);
         //先判断文件在目标文件夹中是否存在
         if (File.Exists(DestinationPath + filename))
          {
           FileInfo oldFile = new FileInfo(SourceFilename);
           FileInfo newFile = new FileInfo(DestinationPath + filename);
           if (oldFile.LastWriteTime == newFile.LastWriteTime) 
            {
              continue;     //跳出本次循环
            }
           }      else {
           // 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件
           if (Directory.Exists(SourceFilename))
            {
              CopyDirectory(SourceFilename, DestinationPath + filename);
            }// 否则直接Copy文件
            else {
              File.Copy(SourceFilename, DestinationPath + filename, true);          }
           }
       }
      watch.Stop();  //时间停止  MessageBox.Show("备份完成 耗时"+watch.Elapsed+""); //显示所消耗的时间
    }
    以上就是本文的全部内容,希望对大家的学习有所帮助
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/17 11:29:23