C# copy source directory files with original folder to the destination path
2024-10-11 20:46:31
private static void PathCopyFilesWithOriginalFolder()
{
int sourceFilesNum = ;
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 + );
}
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);
}
}
最新文章
- kettle中参数和变量的区别
- ES6 - Note5:Promise
- Python学习【第八篇】Set集合
- Yii源码阅读笔记(二十四)
- 深入理解 Laravel Eloquent(三)——模型间关系(关联)
- 【SpringMVC】SpringMVC系列4之@RequestParam 映射请求参数值
- Windows内核对象
- 【leetcode】Trapping Rain Water(hard)
- Unix环境高级编程学习笔记——dup
- InetAddress类的使用
- C语言复合梯形公式实现定积分
- cocos2d-x游戏开发系列教程-中国象棋02-main函数和欢迎页面
- apigw鉴权分析(1-3)百度 AI - 鉴权方式分析
- 细述:nginx http内核模块提供的变量和解释
- C#Mvc批量删除
- 如何在python中把两个列表的各项分别合并为列表
- java json 转换
- html-form
- lucene 核心概念及入门
- 第四章 栈与队列(a)栈接口与实现