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

    使用的是递归的方式。

  • 相关阅读:
    前端启动摄像头的API
    落谷训练---
    树的遍历 (和) 玩转二叉树 的总结博客
    L2-010 排座位 (并查集)
    最长回文(manacher模板)
    L2-006 树的遍历
    面试题5:从尾到头打印链表
    面试题4:替换空格
    面试题3:二维数组中的查找
    poj 1511(spfa)
  • 原文地址:https://www.cnblogs.com/mm08290523/p/7569351.html
Copyright © 2011-2022 走看看