当前,我们正在使用WinSCP .NET程序集与SFTP服务器进行交互.我们的用例涉及以块的形式获取文件的各个部分.我看到TransferResumeSupportState传输选项可用于恢复文件下载,但不能在需要时*停止和开始/继续下载.
其他用例之一不需要已下载(处理)的文件的一部分位于同一位置(已处理文件的一部分,不再需要).为了使TransferResumeSupportState选项起作用,必须将已下载文件的一部分放在同一位置.
是否有解决方法,将文件偏移值传递给GetFiles?
谢谢,
瓦戈雷
解决方法:
另外,我将SSH.NET用于此任务,您可以在其中直接对流进行操作.
var client = new SftpClient(connectionInfo);
client.Connect();
var sftpFileStream = client.OpenRead(filePath);
sftpFileStream.Seek(previouslyReadOffset, SeekOrigin.Begin);
sftpFileStream.CopyTo(localStream);