码迷,mamicode.com
首页 > Windows程序 > 详细

C#递归复制文件夹

时间:2015-07-10 00:23:11      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:

        /// <param name="sources">原路徑</param>
        /// <param name="dest">目標路徑</param>        
        private void CopyFile(string sources, string dest)
        {
            if (Directory.Exists(sources))
            {
                DirectoryInfo dinfo = new DirectoryInfo(sources);//   傳的是文件路徑,所以不能包含後綴名
                foreach (FileSystemInfo f in dinfo.GetFileSystemInfos())
                {
                    //  目標路徑destName = 目標文件夾路徑 + 原文件夾下的子路徑(或文件夾)名字  
                    String destName = Path.Combine(dest, f.Name);
                    if (f is FileInfo)//    如果是文件就复制                     
                    {
                        System.IO.File.Copy(f.FullName, destName, true);//  true代表可以覆盖同名文件                     
                    }
                    else//  如果是文件夾就創建文件夾然后复制然后递归复制                     
                    {
                        if (!Directory.Exists(destName))
                        {
                            Directory.CreateDirectory(destName);
                        }
                        CopyFile(f.FullName, destName);//   遞歸調用                     
                    }
                }
            }
        }        

 

C#递归复制文件夹

标签:

原文地址:http://www.cnblogs.com/LJP-JumpAndFly/p/4634506.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!