.NET中目录复制方法——自定义函数directoryCopy
2005-10-09 19:14
459 查看
工作需要自己写了一个目录复制函数,用来将一个目录下的所有内容拷贝到另一个目录下。
就是用递归回溯的方法将子目录一级级创建并拷贝当前文件夹中的所有文件。
1 private void directoryCopy(string sourceDirectory, string targetDirectory) {
2 if (!Directory.Exists(sourceDirectory) || !Directory.Exists(targetDirectory)) {
3 return;
4 }
5 DirectoryInfo sourceInfo = new DirectoryInfo(sourceDirectory);
6 FileInfo[] fileInfo = sourceInfo.GetFiles();
7 foreach (FileInfo fiTemp in fileInfo) {
8 File.Copy(sourceDirectory + "\\" + fiTemp.Name, targetDirectory + "\\" + fiTemp.Name, true);
9 }
10 DirectoryInfo[] diInfo = sourceInfo.GetDirectories();
11 foreach (DirectoryInfo diTemp in diInfo) {
12 string sourcePath = diTemp.FullName;
13 string targetPath = diTemp.FullName.Replace(sourceDirectory,targetDirectory);
14 Directory.CreateDirectory(targetPath);
15 directoryCopy(sourcePath,targetPath);
16 }
17 }
就是用递归回溯的方法将子目录一级级创建并拷贝当前文件夹中的所有文件。
1 private void directoryCopy(string sourceDirectory, string targetDirectory) {
2 if (!Directory.Exists(sourceDirectory) || !Directory.Exists(targetDirectory)) {
3 return;
4 }
5 DirectoryInfo sourceInfo = new DirectoryInfo(sourceDirectory);
6 FileInfo[] fileInfo = sourceInfo.GetFiles();
7 foreach (FileInfo fiTemp in fileInfo) {
8 File.Copy(sourceDirectory + "\\" + fiTemp.Name, targetDirectory + "\\" + fiTemp.Name, true);
9 }
10 DirectoryInfo[] diInfo = sourceInfo.GetDirectories();
11 foreach (DirectoryInfo diTemp in diInfo) {
12 string sourcePath = diTemp.FullName;
13 string targetPath = diTemp.FullName.Replace(sourceDirectory,targetDirectory);
14 Directory.CreateDirectory(targetPath);
15 directoryCopy(sourcePath,targetPath);
16 }
17 }
相关文章推荐
- Linux 下复制(cp)目录时排除一个或者多个目录的方法
- ASP.NET Core 2.0 自定义 _ViewStart 和 _ViewImports 的目录位置
- asp.net mvc 3.0详细笔记__16__自定义的 HtmlHelper类方法
- 复制文件夹的方法 .net
- ASP.NET MVC自定义辅助方法Helper Method
- asp.net中c#自定义事件的实现方法详解
- asp.net页面间传值的几种方法 表单提交 传送页面代码 复制代码 <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server
- PHP递归复制、移动目录的自定义函数分享
- .NET中获取程序根目录的常用方法介绍
- FCKeditor键盘事件两种方法(自定义键盘事件,自带键盘事件)asp.net
- ASP.NET Core 2.0 自定义 _ViewStart 和 _ViewImports 的目录位置
- IIS共享目录为asp.net网站无权限访问的解决方法
- 《PHP---自定义创建目录文件方法》----如果目录已存在,该目录必须为空才可继续创建
- asp.net、c#获得根目录方法
- Asp.net自定义验证控件CustomValidator 的使用方法
- asp.net 获取当前目录的几个方法
- asp.net自定义错误处理页面的几种方法
- ASP.NET获取根目录的方法集合
- ASP.NET - Eval使用自定义的方法