簡體   English   中英

使用 WinSCP .NET 程序集檢查 SFTP 服務器上是否存在任何具有擴展名的文件

[英]Check if any file with an extension exists on SFTP server using WinSCP .NET assembly

使用 WinSCP .NET 程序集檢查遠程 SFTP 文件夾中是否有任何.xls文件的 C# 代碼是什么? xls文件有不同的名稱,我只知道我想要的文件將具有xls文件擴展名。

string strFileRemote = @"/folder/*.xls";
// Set up session options
SessionOptions sessionOptions = new SessionOptions
{
    Protocol = Protocol.Sftp,
    HostName = sftpHost,
    UserName = sftpUsername,
    SshHostKeyFingerprint = "value for finger print",
    SshPrivateKeyPath = @"\\file server\.ppk",
};

using (Session session = new Session())
{
    // Connect
    session.Open(sessionOptions);

    // Upload files
    TransferOptions transferOptions = new TransferOptions();
    transferOptions.TransferMode = TransferMode.Binary;

    TransferOperationResult transferResult;
    // Download
    transferResult =
        session.GetFiles(strFileRemote, strFileLocal, false, transferOptions);

    // Throw on any error
    transferResult.Check();
    if (transferResult.IsSuccess == false)
    {
        strStatus = "Error: " + transferResult.ToString();
    }
}

正如WinSCP 關於檢查文件存在的文章所建議的那樣,使用Session.EnumerateRemoteFiles檢查 SFTP 服務器上是否存在與掩碼匹配的任何文件:

bool anyXmlExists =
    session.EnumerateRemoteFiles("/folder", "*.xml", EnumerationOptions.None).Any();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM