gpt4 book ai didi

c# - WinSCP:在上传/下载文件时查看进度

转载 作者:行者123 更新时间:2023-11-30 20:23:44 26 4
gpt4 key购买 nike

我使用 WinSCP .NET 库通过 PutFiles(..)GetFiles(..) 从 SFTP 服务器上传/下载文件。

有没有办法查看本服务器上传/下载文件的进度?因此,例如,获取已下载文件大小的百分比。

谢谢,迈克尔

最佳答案

有一个 FileTransferProgress WinSCP librarySession 类上的事件.

您只需注册该事件,然后从该处理程序中更新您的 UI:

using (Session session = new Session())
{
// Will continuously report progress of transfer
session.FileTransferProgress += SessionFileTransferProgress;

/* Down / upload code here */
}

void SessionFileTransferProgress(object sender, FileTransferProgressEventArgs e)
{
// Print transfer progress
Console.Write("\r{0} ({1:P0})", e.FileName, e.FileProgress);
}

请注意,FileTransferProgressEventArgs.Sid​​e 使您能够判断事件参数是用于上传还是下载。其他属性包含有关传输速度、当前传输的文件等信息...

这是它的完整文档:http://winscp.net/eng/docs/library_session_filetransferprogress

编辑该事件在每次新传输(文件)开始时调用,然后每次传输最多每秒调用一次。

关于c# - WinSCP:在上传/下载文件时查看进度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28169204/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com