我们有些客户公司的数据比较重要,为了安全集团公司内部都使用的是局域网,但是有时候又不得不予外界互联网做数据交互,所以有些不重要的系统是放在外界互联网的,这样以来内部系统和外部系统的数据交互就成为了问题,这样以来就使用到了SFTP服务器来作为数据传输的中介。下面不说了,直接上C#代码:
此处使用了第三方动态库Tamir.SharpSSH.dll
直接调用即可
先写一个SFTPHelper 类:
public class SFTPHelper
{
private Session m_session;
private Channel m_channel;
private ChannelSftp m_sftp;
//host:sftp地址 user:用户名 pwd:密码
public SFTPHelper(string host, string user, string pwd)
{
string[] arr = host.Split(':');
string ip = arr[0];
int port = 22;
if (arr.Length > 1) port = Int32.Parse(arr[1]);
JSch jsch = new JSch();
m_session = jsch.getSession(user, ip, port);
MyUserInfo ui = new MyUserInfo();
ui.setPassword(pwd);
m_session.setUserInfo(ui);
}
//SFTP连接状态
publ