在本地下载文件之前检查文件是否仍在 FTP 位置使用的任何方法
Any method to check whether file is still in use on FTP location before downloading it locally
我正在使用 WinSCP .NET 库从 FTP 下载文件。
我的密码是
session.ExecutablePath = _appSettings["ApplicationFolderPath"] + "WinSCP.exe";
session.Open(sessionOptions);
var obj = session.ListDirectory(_appSettings["SFTP_IncomingFileFolder"]);
if (obj != null && obj.Files != null)
{
foreach (RemoteFileInfo fileOrDo in obj.Files)
{
if (fileOrDo.Name == "." || fileOrDo.Name == ".." || fileOrDo.FileType == 'd' || fileOrDo.FileType == 'D')
{
continue;
}
// here I want's to check whether file is not in use before calling session.GetFiles(...,...).Check();
}
}
我想要的是在下载文件之前检查 FTP 位置上的文件未被使用。知道我应该使用什么界面。
无法测试文件是否正在通过 FTP 协议使用。
不仅是 WinSCP .NET 程序集,还有一般情况。
所以你所能做的就是尝试下载文件并优雅地处理任何失败。
我正在使用 WinSCP .NET 库从 FTP 下载文件。
我的密码是
session.ExecutablePath = _appSettings["ApplicationFolderPath"] + "WinSCP.exe";
session.Open(sessionOptions);
var obj = session.ListDirectory(_appSettings["SFTP_IncomingFileFolder"]);
if (obj != null && obj.Files != null)
{
foreach (RemoteFileInfo fileOrDo in obj.Files)
{
if (fileOrDo.Name == "." || fileOrDo.Name == ".." || fileOrDo.FileType == 'd' || fileOrDo.FileType == 'D')
{
continue;
}
// here I want's to check whether file is not in use before calling session.GetFiles(...,...).Check();
}
}
我想要的是在下载文件之前检查 FTP 位置上的文件未被使用。知道我应该使用什么界面。
无法测试文件是否正在通过 FTP 协议使用。
不仅是 WinSCP .NET 程序集,还有一般情况。
所以你所能做的就是尝试下载文件并优雅地处理任何失败。