这篇文章主要介绍“C#递归方法复制文件夹的方法”,在日常操作中,相信很多人在C#递归方法复制文件夹的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C#递归方法复制文件夹的方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
有时候C#递归方法复制文件夹是我们需要实现的功能,那么如何实现呢,C#递归方法在这里是如何办到的呢?这里的实例演示了用递归的方法复制指定文件夹下所有文件(包括子文件夹)到指定位置。
C#递归方法复制文件夹实例:
using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.IO ; namespace temp3 { /// /// WebForm1 的摘要说明。 /// C#递归方法复制文件夹 public class WebForm1 : System.Web.UI.Page { protected System.Web.UI.WebControls.Button Button1; private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 } #region Web 窗体设计器生成的代码 override protected void OnInit(EventArgs e) { //C#递归方法复制文件夹 // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。 // InitializeComponent(); base.OnInit(e); } /// /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// C#递归方法复制文件夹 private void InitializeComponent() { this.Button1.Click += new System.EventHandler(this.Button1_Click); this.Load += new System.EventHandler(this.Page_Load); } #endregion private void Button1_Click(object sender, System.EventArgs e) { CopyFiles(@"D:\PCT",@"E:\PCT"); } private void CopyFiles( string varFromDirectory,string varToDirectory) { Directory.CreateDirectory(varToDirectory); if(!Directory.Exists(varFromDirectory)) return; string[] directories = Directory.GetDirectories(varFromDirectory); if(directories.Length > 0) { foreach(string d in directories) { CopyFiles(d,varToDirectory + d.Substring(d.LastIndexOf("\\"))); } } //C#递归方法复制文件夹 string[] files = Directory.GetFiles(varFromDirectory); if(files.Length > 0) { foreach(string s in files) { File.Copy(s,varToDirectory + s.Substring(s.LastIndexOf("\\"))); } } } } }
到此,关于“C#递归方法复制文件夹的方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!