前段时间 要实现一个sftp 上传下载的功能 用的是ChilkatDotNet4.dll
后来发现 这个是收费的 。
就在网上down 了一个 开源的实现sftp 的源码
下载链接:点击打开链接
实现代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Renci.SshNet;
using System.IO;
using System.Threading;
namespace SFTP_VS
{
public class SFtpClient : IFtpClient
{
SftpClient sftp = null;
/// <summary>
/// 构造函数
/// </summary>
/// <param name="host">sftp服务器名或IP</param>
/// <param name="port">端口,默认22</param>
/// <param name="user"></param>
/// <param name="privateKey"></param>
/// <param name="passPhrase"></param>
public SFtpClient(string host, int? port, string user, string privateKey, string passPhrase)
{
PrivateKeyFile keyFile = null;
if (string.IsNullOrEmpty(passPhrase))
{
keyFile = new PrivateKeyFile(privateKey);
}
else
{
keyFile = new PrivateKeyFile(privateKey, passPhrase);
}
if (port.HasValue)
{
sftp =