//最后不带“/” public static void CopyDirectory(string sourceDirectory, string destDirectory, Func <string, bool> callBack = null) { //判断源目录和目标目录是否存在,如果不存在,则创建一个目录 FEPath.CreateDirectory(sourceDirectory); FEPath.CreateDirectory(destDirectory); //拷贝文件 copyFile(sourceDirectory, destDirectory, false, callBack); //拷贝子目录 //获取所有子目录名称 string[] directionName = FEPath.GetDirectories(sourceDirectory); foreach (string directionPath in directionName) { //根据每个子目录名称生成对应的目标子目录名称 string directionPathTemp = destDirectory + "/" + directionPath.Substring(sourceDirectory.Length + 1); //递归下去 CopyDirectory(directionPath, directionPathTemp, callBack); } }