zoukankan      html  css  js  c++  java
  • 复制文件夹及文件

       /// <summary>
            /// 复制文件夹及文件
            /// </summary>
            /// <param name="sourceFolder">源文件夹路径</param>
            /// <param name="destFolder">目标文件夹路径</param>
            /// <returns></returns>
            public int CopyFolder2(string sourceFolder, string destFolder)
            {
                try
                {
    
                    string folderName = System.IO.Path.GetFileName(sourceFolder); 
                    string destfolderdir = System.IO.Path.Combine(destFolder, folderName); 
                    string[] filenames = System.IO.Directory.GetFileSystemEntries(sourceFolder);
    
                    string Basedestfolderdir = destfolderdir; 
    
                    DirectoryInfo TheFolder = new DirectoryInfo(destfolderdir); 
                    foreach (string file in filenames)// 遍历所有的文件和目录
                    {
                        string srcfileName = System.IO.Path.Combine(destfolderdir, System.IO.Path.GetFileName(file));
    
     
                        //判断如果不是文件则进入复制文件夹,如果是文件则进行复制 
                        //     true if path refers to an existing directory; false if the directory does
                        //     not exist or an error occurs when trying to determine if the specified file
                        //     exists.
                        if (!Directory.Exists(file))
                        {
     
                            if (!System.IO.Directory.Exists(destfolderdir))
                            {
                                System.IO.Directory.CreateDirectory(destfolderdir);
    
                            }
                            log.ErrorFormat("目标文件路径确认无误:{0}", destfolderdir);
    
    
                            //判断文件是否已经存在
                            //如果不存在,则复制文件到目标路径
                            //如果调用者具有所需的权限,且路径包含名称,则为true
                            if (!File.Exists(srcfileName))
                            {
    
                                System.IO.File.Copy(file, srcfileName);
                            } 
                        }
                        else
                        {
                            //判断是文件夹,进入继续遍历
                            CopyFolder2(file, Basedestfolderdir);
                        }
                      
                       
    
                    }
                    return 1;
                }
                catch (Exception ex)
                {
    
                    log.ErrorFormat("复制文件夹失败:{0}", ex);
                    return 0;
                }
    
            }
  • 相关阅读:
    鼠标划过出现子菜单
    让dedecms(织梦)的list标签支持weight排序
    win7 64位无法安装网络打印机
    点击外部链接, 让iframe父页面也跟着显示
    C/C++指针(转)
    OO与设计模式的原则、目标 (转)
    页面添加QQ
    Windows Form 中的鼠标事件
    深入浅出C#消息
    初始化列表
  • 原文地址:https://www.cnblogs.com/lhlong/p/11202153.html
Copyright © 2011-2022 走看看