Пример #1
0
    //最后不带“/”
    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);
        }
    }