2016-01-11 331 views
2

我想使用Renci.SshNet.Sftp中的類從VB.NET的SFTP服務器下載文件。這裏是我的代碼:如何從vb.net的SFTP下載文件

Using client As New SftpClient("server", "test", "test") 
    client.Connect() 
    Dim list As List(Of SftpFile) = CType(client.ListDirectory(""), List(Of SftpFile)) 
    '------------------------ 
    For Each sFile As SftpFile In list 
     Console.WriteLine(sFile.Name) 
     client.DownloadFile("path", ????) 
    Next 
    client.Disconnect() 
End Using 

有了這段代碼,我可以連接到服務器並查看文件,但我無法下載它。我不知道如何撥打DownloadFile方法。

回答

3

DownloadFile方法的第二個參數需要一個流。所以,你只需要創建一個新的FileStream將下載的數據寫入到一個新的文件,如:

Using fs As New FileStream(localFilePath, FileMode.CreateNew, FileAccess.Write) 
    client.DownloadFile(serverFilePath, fs) 
End Using