将文件夹从本地计算机复制到服务器中的文件夹

本文关键字:文件夹 服务器 复制 计算机 | 更新日期: 2023-09-27 18:09:08

从本地复制文件夹从本地复制完整的文件和文件夹,即用户选择的文件夹/目录路径必须完全为[all]被选择路径内的文件将被粘贴/复制到其中web服务器中托管web应用程序的文件夹。链接到服务器文件夹

将文件夹从本地计算机复制到服务器中的文件夹

嗯,我很难理解你的英语。据我所知,你的任务是在某个位置精确复制一个文件夹,包括所有嵌套的文件夹和文件?如果是,那么我强烈建议使用控制台命令xcopy,因为它对性能进行了优化,并提供了复制具有所有相关安全权限等的文件结构的好处。

试试这个:

            string[] SourceFilez = System.IO.Directory.GetFiles("path", "*.*", System.IO.SearchOption.AllDirectories);
            string[] targetFilez = new string[SourceFilez.Length];
            SourceFilez.CopyTo( targetFilez, 0 );

            for(int i = 0; i < targetFilez.Length; ++i)
            {
                targetFilez[i] = targetFilez[i].Replace("oldfolder", "newfolder");
                string strThisDirectory = System.IO.Path.GetDirectoryName(targetFilez[i]);

                if (!System.IO.Directory.Exists(strThisDirectory))
                {
                    System.IO.Directory.CreateDirectory(strThisDirectory);
                }
                System.IO.File.Copy(SourceFilez[i], targetFilez[i]);
            }

你可能想在try-catch-finally块中包含for循环的内容。

要考虑空目录,您可能需要重复相同的代码块,而不需要文件。复制,将SourceFilez替换为:

string[] SourceDirectories = System.IO.Directory.GetDirectories("path", "*.*", System.IO.SearchOption.AllDirectories);

如果你有IIS7,而用户没有必要的权限来写目标文件夹,你需要使用身份模拟并将应用程序池切换到经典模式。



编辑:

或者你指的是一种将web应用程序用户计算机上的文件夹中的所有文件同时上传到服务器的方法?在这种情况下,需要使用JQuery uploadify:
http://www.uploadify.com/