ACAT.Lib.Core.Utility.FileUtils.copyDir C# (CSharp) Метод

copyDir() приватный статический Метод

Recursively copies source dir to target
private static copyDir ( string srcDir, string targetDir, bool recursive ) : void
srcDir string source dir
targetDir string target dir
recursive bool go deep recursively?
Результат void
        private static void copyDir(string srcDir, string targetDir, bool recursive)
        {
            var dir = new DirectoryInfo(srcDir);
            var dirs = dir.GetDirectories();

            if (!dir.Exists)
            {
                Log.Debug("No such directory: " + srcDir);
                return;
            }

            if (!Directory.Exists(targetDir))
            {
                Directory.CreateDirectory(targetDir);
            }

            var files = dir.GetFiles();
            foreach (var file in files)
            {
                file.CopyTo(Path.Combine(targetDir, file.Name), false);
            }

            if (recursive)
            {
                foreach (var subdir in dirs)
                {
                    CopyDir(subdir.FullName, Path.Combine(targetDir, subdir.Name), recursive);
                }
            }
        }
    }