Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c#将一个文件夹复制到另一个文件夹

作者:◇∞柰旳ゝ僦湜沵   发布日期:2025-04-15   浏览:90

using System;
using System.IO;

class Program
{
    static void Main()
    {
        string sourcePath = @"C:\sourceFolder"; // 源文件夹路径
        string destinationPath = @"C:\destinationFolder"; // 目标文件夹路径

        try
        {
            CopyDirectory(sourcePath, destinationPath);
            Console.WriteLine("文件夹复制成功!");
        }
        catch (Exception ex)
        {
            Console.WriteLine($"发生错误: {ex.Message}");
        }
    }

    static void CopyDirectory(string sourceDir, string targetDir)
    {
        // 确保目标目录存在,如果不存在则创建
        if (!Directory.Exists(targetDir))
        {
            Directory.CreateDirectory(targetDir);
        }

        // 获取源目录中的所有文件并逐个复制到目标目录
        foreach (string file in Directory.GetFiles(sourceDir))
        {
            string name = Path.GetFileName(file);
            string dest = Path.Combine(targetDir, name);
            File.Copy(file, dest, true); // true表示覆盖已存在的文件
        }

        // 递归处理子目录
        foreach (string directory in Directory.GetDirectories(sourceDir))
        {
            string name = Path.GetFileName(directory);
            string dest = Path.Combine(targetDir, name);
            CopyDirectory(directory, dest);
        }
    }
}

解释说明:

  1. 命名空间和类

    • 使用 SystemSystem.IO 命名空间来处理文件和目录操作。
    • 定义了一个名为 Program 的类,其中包含 Main 方法作为程序的入口点。
  2. 变量定义

    • sourcePath:源文件夹的路径。
    • destinationPath:目标文件夹的路径。
  3. CopyDirectory 方法

    • 首先检查目标文件夹是否存在,如果不存在则创建。
    • 使用 Directory.GetFiles 获取源文件夹中的所有文件,并逐个复制到目标文件夹中。
    • 使用 File.Copy 方法复制文件,第三个参数 true 表示如果目标文件已经存在,则覆盖它。
    • 使用 Directory.GetDirectories 获取源文件夹中的所有子目录,并递归调用 CopyDirectory 方法处理每个子目录。
  4. 异常处理

    • 使用 try-catch 块捕获可能发生的异常,并输出错误信息。
  5. 控制台输出

    • 如果文件夹复制成功,输出 "文件夹复制成功!"。
    • 如果发生错误,输出错误信息。

上一篇:c#正则表达式提取文本

下一篇:c# crc16校验

大家都在看

c# 二进制

c# tcp client

c# type.gettype

c# sqlconnection

.net和c#

c#游戏开发

c#网络编程

c# rectangle

c# if else

c# rtsp

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站