使用 WinSCP .NET 程序集在远程服务器上复制文件

我一直在我的一个项目中使用 WinSCP .NET Assembly 将文件从一个 FTP 服务器传输到另一个。现在,我想将一个文件从一个目录复制到另一个目录(都存在于同一个 FTP 服务器上)。我在 WinSCP .NET 程序集中找到了以下方法:

MoveFile(string sourcePath, string targetPath)

但它将文件从源目录移动到目标路径(从源路径删除),而我想在两个路径上都保留一个副本。

我发现在 WinSCP 客户端中有一个叫做重复的方法可以执行复制操作,但它在程序集中不可用。

有没有办法将原始文件保留在源路径并在目的地创建副本?

笔记:

我的问题特定于 WinSCP .Net 程序集。我不是在问 FTP 协议。


动漫人物
浏览 140回答 1
1回答

慕勒3428872

使用Session.DuplicateFile方法:public void DuplicateFile(string sourcePath, string targetPath)但请注意,它仅在服务器实际支持复制时才有效,而大多数服务器不支持。而 GUI 的“复制”功能将回退到“下载和上传”(在 GUI 中称为“通过本地临时副本复制”)。在 .NET 程序集中,您可以使用Session.GetFilesand做同样的事情Session.PutFiles,Session.DuplicateFile不会自动为您做。
打开App,查看更多内容
随时随地看视频慕课网APP