【C#】递归移动拷贝目录

当我们需要移动目录时,不能的简单的Directory.Move,这个方法不能支持递归迁移目录
需要我们进行递归进行迁移


void Main()
{string sourcePath = @"D:\费用报销";string destinationPath = @"D:\文档\费用报销";// 确保源路径存在if (!Directory.Exists(sourcePath)){Console.WriteLine("源目录不存在。");return;}// 创建目标目录Directory.CreateDirectory(destinationPath);// 递归地复制和删除目录和文件try{MoveDirectoryContentsRecursively(new DirectoryInfo(sourcePath), new DirectoryInfo(destinationPath));Console.WriteLine("目录及其内容移动成功。");}catch (Exception e){Console.WriteLine("移动目录时出错: {0}", e.Message);}
}private static void MoveDirectoryContentsRecursively(DirectoryInfo source, DirectoryInfo destination)
{// 复制所有文件foreach (FileInfo file in source.GetFiles()){file.CopyTo(Path.Combine(destination.FullName, file.Name), true);}// 复制所有子目录foreach (DirectoryInfo subDirectory in source.GetDirectories()){DirectoryInfo newDestinationSubDir = destination.CreateSubdirectory(subDirectory.Name);MoveDirectoryContentsRecursively(subDirectory, newDestinationSubDir);}// 删除原始目录和文件 拷贝就不删//Directory.Delete(source.FullName, true);
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/842934.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

概率分布函数与误差函数的关系

正态函数(高斯分布) 对其求[b,x]区间的积分 标准误差函数 以下两个方程相等(a,b取值任意) 两个函数重合 可知正态函数 f(t) 在[b,x]的区间上积分等于 引用desmos计算器:Desmos | Lets learn together.

2024年,企业薪酬预算怎么做?

新的一年已经开始,许多企业的HR和财务部门正面临着薪酬预算的问题。预算数额过高,老板不会批准;而预算水平过低,则会引起员工不满。因此,薪酬预算是一项棘手的任务。然而,薪酬预算对企业的人力资源管理至关…

5.命令行提示符

一、打开终端(有以下几种方式) 1.在搜索框输入 terminal 2.命令 (1)ctrlaltt打开新的终端 (2)ctrlshiftt:在已经打开终端的基础内,新打开一个同路径的终端。 (3&#xf…

使用 Go 实现 HelloWorld 程序,并分析其结构

在学习任何新的编程语言时,编写一个 “Hello, World” 程序通常是最初的入门步骤。这不仅是一个传统,也是一种快速了解语言基本语法和运行机制的有效方法。对于 Go 语言,这个过程不仅可以帮助新手快速入门,还提供了一个窗口&#…

一文读懂什么是PaaS平台

如今,数字化概念广为流传,数字化转型的重要性也不言而喻。在转型过程中,企业不仅需要高效地管理业务流程,还需要不断创新和适应市场变化。在这样的背景下,PaaS平台应运而生,成为了企业实现创新、提升效率的…

充电宝哪家好用推荐?买什么充电宝性价比高?2024年充电宝排行榜

说实话,我其实是个手机重度使用者,买过的充电宝也有无数款了,每次手机没电的时候插座都离得不是特别近,不是要下床充电就是要固定在一个位置充电感觉怪麻烦的,但是有了充电宝后可以在床上玩手机都不用担心手机没电&…

1131. 绝对值表达式的最大值

1131. 绝对值表达式的最大值 原题链接:完成情况:解题思路:参考代码:_1131绝对值表达式的最大值 错误经验吸取 原题链接: 1131. 绝对值表达式的最大值 https://leetcode.cn/problems/maximum-of-absolute-value-expr…

JAVA面试题大全(十六)

1、数据库的三范式是什么? 数据库的三范式是数据库设计中的三个基本原则,它们用于确保数据库的结构合理、数据冗余最小化,并提高数据的一致性。这三个范式分别是: 第一范式(1NF):确保每个列都是…

机会就在眼前!2025-CISP深圳国际体育展的招展工作火热持续中...

2025-CISP中国(深圳)国际体育展的招展工作火热持续中,凭借越来越深远的影响力以及前两届的成功举办经验,展位多半已被“抢购”。但小编的同事们同时又反映出一个问题:有一批老展商和新展商已有明确的参展意向&#xff…

第十三周 5.27面向对象的三大特性(封装、继承、多态)(三)

3.instanceof避免类型转换异常: (1)语法:引用名 instanceof 类名 (2)执行:判断引用中存储的实际对象类型是否兼容于后面的类型(是否为后面类型的一种),兼容一true,不兼容—false (3)作用:可以在程序设计中避免类型转换异常 直接使用案例…

C# 中 async 与 await 关键字详解

async 和 await 关键字的作用是使方法能够异步执行并等待异步操作的完成。(最重要的一点是记住 “异步执行”与“等待异步操作完成”,不是等待主线程操作完成) async 修饰符可将 方法、lambda 表达式或匿名方法指定为异步。 async 关键字用于…

TS(TypeScript)中Array数组无法调出使用includes方法,显示红色警告

解决方法 打开tsconfig.json文件,添加"lib": ["es7", "dom"]即可。 如下图所示。

如何使用Spring Cache优化后端接口?

Spring Cache是Spring框架提供的一种缓存抽象,它可以很方便地集成到应用程序中,用于提高接口的性能和响应速度。使用Spring Cache可以避免重复执行耗时的方法,并且还可以提供一个统一的缓存管理机制,简化缓存的配置和管理。 本文将详细介绍如何使用Spring Cache来优化接口,…

nginx开启资源目录

nginx开启资源目录表 可访问开放资源目录下的任何文件以及视频,图片等。可以作为一个妥妥的线上网盘资源托管空间使用。 上一篇文档揭示了nginx的神秘面纱,初步介绍与启动了nginx的基本功能和使用前端nginx学习配置开发验证,对各种配置已经…

rm命令处理(防止误删)

文章目录 前言:一、添加回收站脚本二、测试1.rm命令测试2.清理回收站 三、自动建立回收站脚本总结 前言: 前几天本来想对开发板上的内容进行一个转移,一边心想这直接mv -rf * dir不就行了嘛,一边打上了rm -rf * dir。。。然后。。…

Nacos源码本地用idea启动不了 Unable to start embedded Tomcat

1.报错 org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcatat org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:142)at org.springframework.boot.web.embedded.tomcat.TomcatWebSe…

UE5 CommonUI的使用(附源码版)

UE5 CommonUI的使用 前言快速配置配置Game Viewport Client ClassCommonGameViewportClient源代码 创建CommonInputAction表默认导航Action设置CommonUIInputData源码 Bind CommonInputBaseControllerDataCommonInputBaseControllerData源码 Common UI控件库和控件样式CommonUs…

flutter性能优化-UI重绘

在Flutter中,可以采取以下几种方法来减少UI的重绘: 使用setState()方法进行批量更新:当需要更新多个UI元素时,可以使用setState()方法进行批量更新,而不是在每次更新时都调用setState()。这样可以减少重绘的次数&#…

U8G2移植到STM32,SSD13XXXOLED(硬件SPI DMA通讯)

文章目录 一、前言1.1 U8g2的特点1.2 U8G2的优势1.3 U8G2的下载地址1.4 U8g2支持的显示控制器 二、STM32Cubexm SPI DMA配置2.1 SPI设置为半双工模式2.2 SPI DMA设置2.3 oled其他引脚配置 三、移植U8G2框架3.1 精简U8G2库文件3.2 去掉csrc文件夹中无用的驱动文件3.3 文件移动到…

庆余年2火了,却把热爱开源的程序员给坑了

庆余年 2 终于开播了,作为一名剧粉,苦等了五年终于盼来了。开播即爆火,虽然首播的几集剧情有些拖沓,不过也不影响这是一部好剧。 然而,庆余年 2 的爆火,却把 npmmirror 镜像站给坑惨了。npmmirror 镜像站&…