C# copy source directory files with original folder to the destination path

private static void PathCopyFilesWithOriginalFolder()        {            int sourceFilesNum = 0;            try            {                                string sourceDir = @"E:\Source";                string destDir = @"E:\Dest";                string[] allSourceFiles = Directory.GetFiles(sourceDir, "*", SearchOption.AllDirectories);                if (allSourceFiles != null && allSourceFiles.Any())                {                    foreach (var sourceFileFullName in allSourceFiles)                    {                        string sourceFileDir = Path.GetDirectoryName(sourceFileFullName);                        string sourceFileRelativeDir = string.Empty;                        if (sourceFileDir.Length > sourceDir.Length)                        {                            sourceFileRelativeDir = sourceFileDir.Substring(sourceDir.Length + 1);                        }                        else                        {                            sourceFileRelativeDir = "";                        }                        string destFileDir = Path.Combine(destDir, sourceFileRelativeDir);                        if (!Directory.Exists(destFileDir))                        {                            Directory.CreateDirectory(destFileDir);                        }                        string destFileFullName = Path.Combine(destFileDir, Path.GetFileName(sourceFileFullName));                        File.Copy(sourceFileFullName, destFileFullName, true);                        string msg = $"SourceFileFullName:{sourceFileFullName},DestFileFullName:{destFileFullName}";                        Console.WriteLine(msg);                        sourceFilesNum++;                    }                }            }            catch(Exception ex)            {                MessageBox.Show(ex.Message);            }            finally            {                System.Diagnostics.Debug.WriteLine(sourceFilesNum);            }                    }
(0)

相关推荐