• 将制定目录下的内容复制到另一个路径下


    //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

    使用的是递归的方式。

  • 相关阅读:
    (转)乐观的并发策略——基于CAS的自旋
    mysql避免插入重复数据
    Java_Web使用简单的批处理操作
    Java中jar命令详解
    使用文档注释(javadoc)
    APP和WEB元素定位方法
    RF(二)RF常用库介绍
    RF(一)RF的安装步骤
    javascript匿名函数及闭包深入理解及应用
    javascript简介
  • 原文地址:https://www.cnblogs.com/mm08290523/p/7569351.html
Copyright © 2020-2023  润新知