JAVA代码时间SFTP文件的下载
参考文章:http://blog.csdn.net/smallerpig/article/details/50976191
SFTP文件的下载与FTP文件的下载差别较大,需要下载jsch-0.1.54jar包
package com.cd.util;
import com.jcraft.jsch.JSchException;
public class SftpDownloadTestScript {
public static void main (String[] args)throws JSchException {
String ftpHost = "192.168.188.155";
String ftpUserName = "exftp";
String ftpPassword = "sFtP06222013";
int ftpPort = 22;
String ftpPath = ".";
String localPath = "D:/SFTP/uploadFiles/demo";
String fileName = "aa.jpg";
FtpUtil.downloadSftpFile(ftpHost, ftpUserName, ftpPassword, ftpPort, ftpPath, localPath, fileName);
}
}
package com.cd.util; import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.SocketException;
import java.util.Properties; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import com.jcraft.jsch.Channel;
import com.jcraft.jsch.ChannelSftp;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.JSchException;
import com.jcraft.jsch.Session; public class FtpUtil { private final static Log logger = LogFactory.getLog(FtpUtil.class); /*
* 从SFTP服务器下载文件
*
* @param ftpHost SFTP IP地址
*
* @param ftpUserName SFTP 用户名
*
* @param ftpPassword SFTP用户名密码
*
* @param ftpPort SFTP端口
*
* @param ftpPath SFTP服务器中文件所在路径 格式: ftptest/aa
*
* @param localPath 下载到本地的位置 格式:H:/download
*
* @param fileName 文件名称
*/
public static void downloadSftpFile(String ftpHost, String ftpUserName,
String ftpPassword, int ftpPort, String ftpPath, String localPath,
String fileName) throws JSchException {
Session session = null;
Channel channel = null; JSch jsch = new JSch();
System.out.println(1);
session = jsch.getSession(ftpUserName, ftpHost, ftpPort);
System.out.println(2);
session.setPassword(ftpPassword);
System.out.println(3);
session.setTimeout(100000);
System.out.println(4);
Properties config = new Properties();
System.out.println(5);
config.put("StrictHostKeyChecking", "no");
System.out.println(6);
session.setConfig(config);
System.out.println(7);
session.connect();
System.out.println(8); channel = session.openChannel("sftp");
System.out.println(9);
channel.connect();
ChannelSftp chSftp = (ChannelSftp) channel;
System.out.println(10); String ftpFilePath = ftpPath + "/" + fileName;
String localFilePath = localPath + File.separatorChar + fileName;
System.out.println(11);
try {
System.out.println("ftpFilePath="+ftpFilePath);
System.out.println("localFilePath="+localFilePath);
System.out.println("localPath="+localPath);
chSftp.get(ftpFilePath, localPath);
System.out.println(13);
} catch (Exception e) {
e.printStackTrace();
logger.info("download error.");
} finally {
chSftp.quit();
channel.disconnect();
session.disconnect();
} } }
下面是SFTP根目录:

JAVA代码时间SFTP文件的下载的更多相关文章
- Android中用Java代码实现zip文件解压缩
如果需要下载的文件有很多是中文名的,解压时有中文名的文件出现乱码,试了很多方法不能解决问题.据说有一个Java插件包,用这个插件包可以解决中文名乱码的问题,但不知解压的文件是否要用它提供的类压缩后的文 ...
- Java ftp 上传文件和下载文件
今天同事问我一个ftp 上传文件和下载文件功能应该怎么做,当时有点懵逼,毕竟我也是第一次,然后装了个逼,在网上找了一段代码发给同事,叫他调试一下.结果悲剧了,运行不通过.(装逼失败) 我找的文章链接: ...
- servlet设置缓存时间以及文件的下载
缓存时间的设置: public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletE ...
- Java 代码完成删除文件、文件夹操作
import java.io.File;/** * 删除文件和目录 * */public class DeleteFileUtil { /** * 删除文件,可以是文件或文件夹 ...
- java代码将excel文件中的内容列表转换成JS文件输出
思路分析 我们想要把excel文件中的内容转为其他形式的文件输出,肯定需要分两步走: 1.把excel文件中的内容读出来: 2.将内容写到新的文件中. 举例 一张excel表中有一个表格: 我们需要将 ...
- 使用PHP自带zlib函数 几行代码实现PHP文件打包下载zip
<?php //获取文件列表 function list_dir($dir){ $result = array(); if (is_dir($dir)){ $file_dir = scandir ...
- JAVA中实现根据文件路径下载文件
import javax.servlet.http.HttpServletResponse; import java.io.File; import java.io.FileInputStream; ...
- 用java代码遍历excel文件并回显
今天需要完成282个指标,分析后发现好多都是可复用的字段和方法,生成的dao类也是很多重复的代码,所以写下了简单的自动化遍历excel的test方法, excel业务逻辑如下,用了 HSSFSheet ...
- Java代码操作properties文件(读取,新增/修改,删除)
项目中需要用到操作properties文件中的数据,记录一下 package com.bonc.savepic.save; import java.io.FileNotFoundException; ...
随机推荐
- css3 min-content,max-content,fit-content, fill属性
css3里有四个属性,用来实现以内容为主的尺寸计算方式,intrinsic sizing min-content max-content fit-content fill 其中 fill 关键字,需要 ...
- Python自然语言处理---信息提取
1.数据 目前的数据总体上分为结构化和非结构化的数据.结构化的数据是指实体和关系的规范和可预测的组织.大部分的需要处理的数据都属于非结构化的数据. 2.信息提取 简言之就是从文本中获取信息意义的方法. ...
- Five Great .NET Framework 4.5 Features (五大特性)
[译].Net 4.5 的五项强大新特性 本文原文:Five Great .NET Framework 4.5 Features译者:冰河魔法师 目录 介绍 特性一:async和await 特性二 ...
- log4j的log4j.properties文件配置的详细介绍
参考(common): http://blog.csdn.net/qq_30175203/article/details/52084127 参考2(log4j.additivity): http:// ...
- SignalR 前期简单配置
一.随便你在哪个命名空间下新建一个Startup类,并在在该类中注册SignalR. using Owin; using System; using System.Collections.Generi ...
- vue-5-列表渲染
一个数组的v-for<ul id="example-1"> <li v-for="item in items"> {{ item.mes ...
- 字符与字符串3——char 的大小
字符变量占用内存的大小,也就是char类型声明的变量,这个变量占多少字节. 一字节 char c = 'A'; printf("%d,%d\n", sizeof(c),sizeof ...
- openpyxl读取Excel数据
#! Python3 #-*- coding:utf8 -*- import openpyxl #载入表格内容 wb=openpyxl.load_workbook('e:\\work\\newFile ...
- (C/C++学习笔记) 五. 常变量(只读变量)和宏
五. 常变量(只读变量)和宏 ● 常变量 常变量 #include <iostream.h> //预处理文件 int main() { const d ...
- 几大principal
1.A class should have only one reason to change. 一个类只负责一件事 2.高层抽象不依赖低层实现