zoukankan      html  css  js  c++  java
  • 文件与文件夹的完全复制

    文件与文件夹的完全复制,包扩子目录与子目录的文件

    static void Main(string[] args)
            {
                string dir1 = @"E:MyTest2.NETFileAndDirCopyfile1";
                string dir2 = @"E:MyTest2.NETFileAndDirCopyfile2";
    
                FileAndDirFullCopy(dir1, dir2);
    
                Console.ReadKey();
            }
    
            /// <summary>
            /// Full copies of files and directories
            /// </summary>
            /// <param name="sourceDir">source Dir.</param>
            /// <param name="destinationDir">destination Dir.</param>
            public static void FileAndDirFullCopy(string sourceDir, string destinationDir)
            {
                DirectoryInfo source = new DirectoryInfo(sourceDir);
    
                //Files
                FileInfo[] files = source.GetFiles();
                foreach (var file in files)
                {
                    string copyToFile = Path.Combine(destinationDir, file.Name);
                    if (!File.Exists(copyToFile))
                    {
                        file.CopyTo(copyToFile);
                        Console.WriteLine($"文件:({file.FullName})被复制到({copyToFile}).
    ");
                    }
    
                    Console.WriteLine($"文件:({file.FullName})复制结束.");
                }
    
                //subfolders and subfiles
                DirectoryInfo[] subDirs = source.GetDirectories();
                foreach (var subDir in subDirs)
                {
                    //Directories
                    string copyToSubDir = Path.Combine(destinationDir, subDir.Name);
                    if (!Directory.Exists(copyToSubDir))
                    {
                        Console.WriteLine($"目录:{subDir.FullName},被创建.
    ");
                        Directory.CreateDirectory(copyToSubDir);
                    }
    
                    //subfiles
                    FileInfo[] subfiles = subDir.GetFiles();
                    foreach (var subfile in subfiles)
                    {
                        string copyToSubFile = Path.Combine(copyToSubDir, subfile.Name);
                        if (!File.Exists(copyToSubFile))
                        {
                            subfile.CopyTo(copyToSubFile);
                            Console.WriteLine($"文件:({subfile.FullName})被复制到({copyToSubFile}).
    ");
                        }
                    }
    
                    //subfolders
                    FileAndDirFullCopy(subDir.FullName, copyToSubDir);
    
                    Console.WriteLine($"目录:({subDir.FullName})复制结束.");
                    Console.WriteLine();
                }
            }
    
  • 相关阅读:
    selenium学习笔记05-selenium操作from表单
    selenium学习笔记04-webdriver核心方法的属性和使用
    selenium学习笔记03-selenium webdriver工作原理
    selenium学习笔记02-selenium定位的八大方法
    selenium学习笔记01
    微服务质量保证学习笔记(一)
    pytest,setup和teardown
    pytest用例编写规则、执行测试
    速耀达账套备份与恢复(速达二次开发)
    速耀达系统权限设置(速达二次开发)
  • 原文地址:https://www.cnblogs.com/tangge/p/14719977.html
Copyright © 2011-2022 走看看