zoukankan      html  css  js  c++  java
  • 将制定目录下的内容复制到另一个路径下

    //Folder是需要复制的总目录,lastpath是目标目录
            private void CopyFile(DirectoryInfo Folders, string lastpath)
            {
                //首先复制目录下的文件
                foreach (FileInfo fileInfo in Folders.GetFiles())
                {
                    if (fileInfo.Exists)
                    {
                        //如果列表有记录的文件,就跳过
                        // if (filePaths.Contains(fileInfo.FullName))   continue;
    
                        string filename = fileInfo.FullName.Substring(fileInfo.FullName.LastIndexOf('\'));
    
                        fileInfo.CopyTo(lastpath + filename, true);
                    }
                }
    
                //其次复制目录下的文件夹,并且进行遍历
                foreach (DirectoryInfo Folder in Folders.GetDirectories())
                {
                    //如果有记录在列表中,则跳过该目录
                    //if (folderPaths.Contains(Folder.FullName)) continue;
                    string Foldername = Folder.FullName.Substring(Folder.FullName.LastIndexOf('\'));
                    //复制后文件夹目录
                    string copypath = lastpath + Foldername;
                    //创建文件夹
                    if (!Directory.Exists(copypath))
                        Directory.CreateDirectory(copypath);
                    //将目录加深,遍历子目录中的文件
                    lastpath = copypath;
                    //子目录递归调用,遍历子目录
                    CopyFile(Folder, lastpath);
                    //上一个子目录中归来,还原目录深度,循环至下一子目录
                    lastpath = lastpath.Substring(0, lastpath.LastIndexOf('\'));
                }
            }
    View Code

    使用的是递归的方式。

  • 相关阅读:
    Akka-CQRS(4)- CQRS Writer Actor 示范
    Akka-CQRS(3)- 再想多点,全面点
    变量、作用域
    JSON概述
    js浮点精度问题
    自定义级联下拉框
    nodejs+express+mysql 增删改查(二)
    使用Navicat Premium 链接本地数据库的方法(二)
    行内编辑时间框
    thinkjs升级到3.0后的图片上传
  • 原文地址:https://www.cnblogs.com/mm08290523/p/7569351.html
Copyright © 2011-2022 走看看