/// <summary> /// 整个文件夹拷贝 /// </summary> /// <param name="yanfilepath">源</param> /// <param name="mudifilepath">目标</param> private void CopyFilesDirs(string yanfilepath, string mudifilepath) { try { string[] arrDirs = Directory.GetDirectories(yanfilepath); string[] arrFiles = Directory.GetFiles(yanfilepath); if (arrFiles.Length != 0) { for (int i = 0; i < arrFiles.Length; i++) File.Copy(yanfilepath + "//" + Path.GetFileName(arrFiles[i]), mudifilepath + "//" + Path.GetFileName(arrFiles[i]), true); } if (arrDirs.Length != 0) { for (int i = 0; i < arrDirs.Length; i++) { Directory.CreateDirectory(mudifilepath + "//" + Path.GetFileName(arrDirs[i])); //递归调用 CopyFilesDirs(yanfilepath + "//" + Path.GetFileName(arrDirs[i]), mudifilepath + "//" + Path.GetFileName(arrDirs[i])); } } else return; } catch { MessageBox.Show("文件拷贝时出错,请检查磁盘"); Application.Exit(); } }