Secure File Transfer Protocol的缩写,安全文件传送协议。
1、连接
ChannelSftp sftp = null; try { JSch jsch = new JSch(); //获取会话对象 Session sshSession = jsch.getSession(username, host, port); System.out.println("Session created."); //向会话对象植入密码 sshSession.setPassword(password); Properties sshConfig = new Properties(); sshConfig.put("StrictHostKeyChecking", "no"); sshSession.setConfig(sshConfig); //连接会话 sshSession.connect(); System.out.println("Session connected."); System.out.println("Opening Channel."); //获得会话通道 Channel channel = sshSession.openChannel("sftp"); //连接 channel.connect(); sftp = (ChannelSftp) channel; System.out.println("Connected to " + host + "."); } catch (Exception e) { } return sftp;
2、操作
//上传文件 try { sftp.cd(directory); File file=new File(uploadFile); sftp.put(new FileInputStream(file), file.getName()); System.out.println("上传成功!"); } catch (Exception e) { e.printStackTrace(); } //下载文件 try { sftp.cd(directory); File file=new File(saveFile); sftp.get(downloadFile, new FileOutputStream(file)); } catch (Exception e) { e.printStackTrace(); } //删除文件 try { sftp.cd(directory); sftp.rm(deleteFile); } catch (Exception e) { e.printStackTrace(); }
3、断开连接(还有session会话、channel对象)//根据项目情况断开连接
if(null != channel ){ System.out.println("断开Channel连接"); channel.disconnect(); } if(null != sftp ){ System.out.println("断开ChannelSftp连接"); sftp.disconnect(); } if(null != sshSession ){ System.out.println("断开Session连接"); sshSession.disconnect(); }
4、测试
public static final String HOST = "x.x.x.x"; public static final int PORT =**; public static final String USERNAME = "**"; public static final String PASSWORD = "***"; public static final String DIRECTORY = "/ent/post_res/"; public static void main(String[] args) { SFTPUploadBean sf = new SFTPUploadBean(); //本地文件 String uploadFile = "G:\\sftp.txt"; //连接 ChannelSftp sftp=sf.connect(HOST, PORT, USERNAME, PASSWORD); //操作 sf.upload(DIRECTORY, uploadFile, sftp); //关闭连接 sf.free(sftp); System.exit(0); }
相关推荐
利用Renci.SshNet类库实现sftp文件操作,Renci.SshNet可以实现sftp(基于ssh)操作,也可以实现sftp(不基于ssh)操作。此文件包括Renci.SshNet.dll、文件操作方法类及调用实例。注意Renci.SshNet.dll只支持.net ...
总结起来,C#通过SSH.NET库可以轻松实现SFTP文件操作,包括连接、上传、下载、删除和移动文件。在开发涉及SFTP的C#应用时,理解这些基本操作是至关重要的。同时,为用户提供友好的图形界面,如"formClient",可以...
总的来说,C#和Renci.SshNet为开发人员提供了一个强大且灵活的工具集,用于处理SFTP文件操作,同时可以通过回调机制轻松地实现进度监控,提升用户体验。在你的SFTPtest工程中,你可以找到一个完整的示例,包含了编译...
JAVA SFTP文件上传、下载及批量下载实例 在本篇文章中,我们将详细介绍JAVA SFTP文件上传、下载及批量下载的实例,包括相关的概念、API介绍、代码实现等方面的内容。 首先,我们需要了解什么是SFTP?SFTP(Secure ...
总之,“SFTP上传下载 MFC VS2010”项目提供了一个安全且用户友好的解决方案,使得开发者或管理员能在VS2010环境中通过MFC库实现SFTP文件操作,同时结合数据库存储的配置信息,提升了系统适应性和安全性。...
1分让你得到sftp常用操作工具,工具实现如下操作: 1)得到当前工作目录地址 2)改变目录为配置的远程目录 3)取文件目录列表 4)取文件列表 5)下载文件 6)复制文件 7)删除文件 8)目录是否存在,文件是否存在 9)移动文件 ...
在这个“Sftp文件上传demo”中,我们将深入探讨如何使用SFTP进行文件上传操作。 首先,我们需要了解SFTP的基本概念。SFTP通过SSH连接建立一个安全通道,用于执行文件管理操作,如上传、下载、重命名和删除文件。与...
总的来说,这个"NET 2.0 支持SFTP上传和下载的dll文件"为.NET 2.0开发者提供了一种便捷的方式,让他们能够在Visual Studio 2005中安全地实现SFTP文件操作,无需深入理解SSH和SFTP协议的底层细节,极大地提高了开发...
首先,为了在C#中实现SFTP文件上传,我们需要一个支持SFTP的库。SharpSSH是一个流行的选择,但现在已被更现代的库如SSH.NET或Renci.SshNet所取代。我们将以Renci.SshNet为例,这是一个强大且易于使用的C# SFTP库。 ...
总之,SFTP上传下载文件工具如FileZilla,对于需要频繁进行远程文件操作的人来说是极其有用的。其强大的功能和易用性使得文件管理变得更加高效和安全。在日常工作中,无论是开发人员部署代码、设计人员分享资源还是...
总结来说,这个GitHub上的`vscode-sftp`分支提供了一个优化的VSCode插件,通过快捷键增强了SFTP文件操作的便捷性,并解决了传输性能问题,对于使用VSCode进行远程开发的用户来说是一个有价值的更新。
5. **SFTP文件操作** 在SFTP会话上,可以执行常见的文件操作。例如,`ssh_sftp_session`类型的结构体提供了`sftp_open()`、`sftp_close()`、`sftp_read()`、`sftp_write()`等函数,分别对应文件的打开、关闭、读取...
【标题】基于QSSH的sftp文件管理器 源代码 在IT行业中,文件管理是日常工作中不可或缺的一部分,尤其是在远程服务器操作时。SFTP(Secure File Transfer Protocol)是一种安全的网络协议,用于在不安全的网络环境中...
标题"windows的sftp文件管理服务器"所涉及的关键知识点包括: 1. **SFTP**:SFTP是FTP的一个安全版本,它不使用单独的控制和数据通道,而是将所有通信都通过一个加密的SSH连接进行。这样可以防止中间人攻击和窃听,...
在描述中提到,“SFTP 源代码库,包含上传文件,下载文件,批量上传和下载”,这表明该代码库提供了一套完整的功能,允许用户执行基本及批量的SFTP文件操作。这些功能对于需要在服务器间移动大量数据的应用程序或...
Renci.SshNet是开源的.NET SSH客户端库,用于执行SFTP文件操作。 4. **SFTPTOAl.exe**:这是主要的可执行文件,是SFTP传输工具的主体部分,使用Renci.SshNet.dll来实现SFTP功能。 5. **SFTPTOAl.vshost.exe**:这...
下面我们将详细探讨如何使用Java通过JSch库实现SFTP文件的上传和下载。 ### 1. JSch库介绍 JSch是Java的一个库,它实现了SSH2协议,包括SFTP子协议。它允许开发者在Java应用程序中实现安全的远程登录、文件传输等...
本项目提供的是一套完整的C++工程源代码,包含了FTP和SFTP的客户端功能,便于开发者在Windows环境下进行文件操作。以下是对该项目中涉及的知识点的详细解释: 1. FTP(File Transfer Protocol):FTP是一种应用层...
### Windows脚本SFTP上传文件至备份服务器方案 #### 概述 在当前的信息安全环境中,数据备份成为了保障业务连续性和数据安全的重要手段之一。传统的FTP传输方式由于其明文的身份验证机制,已经不能满足支付行业的...
`Putty`是一款广受欢迎的SSH客户端,它包含多个组件,如plink、psftp、pscp等,分别用于命令行连接、SFTP文件传输和文件复制等功能。`psftp.exe`是其中的SFTP客户端,支持在命令行环境中执行上传、下载等操作。 要...