有没有办法改善文件夹结构的复制到网络位置

时间:2013-09-03 22:42:11

标签: c# windows

如果要复制包含文件的许多文件夹,通常最好只创建包含文件夹和文件的ZIP / RAR,将其复制到网络路径并解压缩。这通常比复制粘贴快得多

有没有办法以编程方式执行此操作并将其嵌入到窗口中,以便它可以尝试检测哪种方式更快并使用该方式(正常方式或“即时压缩”)来提高速度

2 个答案:

答案 0 :(得分:3)

“动态压缩”是一种浪费,除非另一端有能够执行解压缩的东西,或者压缩状态是可接受的。那说:

是的,你可以编写一个拉链/ rars文件的应用程序。

是的,您可以让该应用将zip / rar复制到网络目录。

是的,您可以让另一端的应用程序等待文件并在本地解压缩...

你能检测到“哪种方式更快”?虽然可能它不可能对大文件以外的任何东西都有好处......在这一点上你应该总是拉/拉和转移......这会使整个练习变得毫无意义。当然,您应该评估可能使用您的应用程序传输的数据,看它是否甚至是压缩的候选者。例如,视频可能不是......

更重要的是,每一端都必须有一个彼此了解的应用程序(或至少是所涉及的协议)。一个应用程序(我们将其称为客户端)将压缩并将文件发布到另一个应用程序(我们称之为服务器)。当服务器收到文件时,它会将其解压缩并将其存储在文件系统中。

<强>更新
我想到了压缩的另一种情况:一次传输很多小文件。正常的网络文件复制例程对于单个大文件和许多小文件来说要快得多。所以,如果他们一次选择几百个文件,你可能会总是拉链。顺便说一下,这并不会改变另一方能够解压缩它的要求。

答案 1 :(得分:0)

您是否尝试过使用robocopy?它内置于Windows,强大,多线程,并具有许多选项,包括镜像和重试失败的情况。我将它与所有复制到网络位置一起使用。试一试。