/**
* sftp下载文件
*/
public static String downLoadFileSftp(String fileUrl, String accessName, String accessPassWord, String contentId)
throws CmsBasicException
{
JSch jsch = new JSch();
Session session = null;
UrlDecoder urlDecoder = new UrlDecoder();
urlDecoder.decodeUrl(fileUrl);
String localFileName = null;
try
{
session = jsch.getSession(accessName, urlDecoder.getIp(), urlDecoder.getPort());
session.setConfig("StrictHostKeyChecking", "no");
session.setPassword(accessPassWord);
session.connect();
Channel channel = session.openChannel("sftp");
channel.connect();
ChannelSftp sftpChannel = (ChannelSftp) channel;
// 1.根据url解析参数
sftpChannel.cd(urlDecoder.getPath());
localFileName = getLocalFile(urlDecoder, contentId);
sftpChannel.get(urlDecoder.getFileName(), localFileName);
sftpChannel.exit();
session.disconnect();
}
catch (JSchException e)
{
throw new CmsBasicException("sftp connect faild");
}
catch (SftpException e)
{
throw new CmsBasicException("sftp connect faild");
}
return localFileName;
}java sftp下载文件
SFTP文件下载实现
最新推荐文章于 2024-12-02 11:29:45 发布
本文介绍了一种通过SFTP协议实现文件下载的方法。利用JSch库建立SFTP连接,并通过ChannelSftp进行文件操作,包括目录切换、文件获取等。同时,文章提供了完整的Java代码示例,展示了如何设置会话、连接SFTP服务器并下载指定路径下的文件。
825





