Java從SFTP伺服器下載檔案
最近對接一個需求,要用SFTP去伺服器上取檔案,這裡記錄下自己的思路。
SFTP下載檔案需要用到jsch的jar包,我用的是jsch-0.1.54.jar,可以到http://www.jcraft.com/jsch/中下載到最新的jsch的jar包,原始碼以及例項。
package test;
import java.io.File;
import java.util.Properties;
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 SFTP {
public static void main (String[] args) {
/*
* 下載檔案
*
* @param sftp_ip SFTP IP地址
* @param sftp_username SFTP 使用者名稱
* @param sftp_password SFTP使用者名稱密碼
* @param sftp_port SFTP埠
* @param sftp_path SFTP伺服器中檔案所在路徑
* @param localPath 下載到本地的路徑
* @param fileName 下載檔案的名稱
*/
String sftp_ip = "10.10.93.78";
String sftp_username = "digi";
String sftp_password = "123456";
int sftp_port = 22;
String sftp_path = "/";
String localPath = "D:/";
String fileName = "135.txt";
try {
downloadSftpFile(sftp_ip, sftp_username, sftp_password, sftp_port, sftp_path, localPath, fileName);
} catch (JSchException e) {
e.printStackTrace();
}
}
public static void downloadSftpFile(String sftp_ip, String sftp_username, String sftp_password, int sftp_port, String sftp_path, String localPath, String fileName) throws JSchException {
Session session = null;
Channel channel = null;
JSch jsch = new JSch();
session = jsch.getSession(sftp_username, sftp_ip, sftp_port);
session.setPassword(sftp_password);
session.setTimeout(1000);
Properties config = new Properties();
//設定不用檢查HostKey,設成yes,一旦計算機的密匙發生變化,就拒絕連線。
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
channel = session.openChannel("sftp");
channel.connect();
ChannelSftp chSftp = (ChannelSftp) channel;
String localFilePath = localPath + File.separator;
try {
//使用ChannelSftp的get(檔名,本地路徑{包含檔名})方法下載檔案
chSftp.get(fileName, localFilePath);
} catch (Exception e) {
e.printStackTrace();
System.out.println("download error.");
} finally {
chSftp.quit();
channel.disconnect();
session.disconnect();
}
}
}
相關推薦
Java從SFTP伺服器下載檔案
最近對接一個需求,要用SFTP去伺服器上取檔案,這裡記錄下自己的思路。 SFTP下載檔案需要用到jsch的jar包,我用的是jsch-0.1.54.jar,可以到http://www.jcraft.com/jsch/中下載到最新的jsch的jar包,原始碼以及
Java從web伺服器下載檔案到本地
/*從伺服器中下載檔案到本地*/ /*url:檔案存放在伺服器的地址;target:要儲存的路徑*/ public String DownloadFile(String url,String target){ URLConnection con=null; URL theUrl=null; try { th
java 遠端從FTP伺服器下載檔案到本地
package com.cassiatwig.liuliangqianbao.util; import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPFile; imp
Java 從指定URL下載檔案並儲存到指定目錄
從指定的URL下載檔案,並儲存到本地,近期開發過程中用的這個功能比較多,特此記錄! 1.基本流程 當我們想要下載網站上的某個資源時,我們會獲取一個url,它是伺服器定位資源的一個描述,下載的過程有如下幾步: (1)客戶端發起一個url請求,獲取連線物件。 (2)伺服器解析url,並且
通過Xshell如何從Linux伺服器下載檔案
利用Xshell登入Linux伺服器,安裝lrzsz檔案接收發送軟體。 #cd /media/CentOS_6.6_Final/Packages #rpm -ivh lrzsz*.rpm
使用WebClient從FTP伺服器下載檔案…
從.NET Framework 2.0版本開始,使用WebClient類可以簡單的從FTP伺服器下載檔案,或者向FTP伺服器上傳檔案。 從FTP服務下載檔案 和在「檔案下載儲存」中介紹的方法一樣。如果使用WebClient.DownloadFile類可以簡單些。 下面的例子是從ftp://lo
putty windows上傳檔案到linux伺服器 & 從linux伺服器 下載檔案到 windows
使用pscp方式從windows上傳檔案到linux伺服器 在CMD命令列中進入到putty安裝目錄 輸入pscp 回車 pscp 跟我們平時使用的linux scp命令操作的都是類似的 現在我直接從windows本地上傳一個檔案到linux伺服器 D:\P
以命令方式從FTP 伺服器下載檔案到本地指定目錄
眾所周知,FTP命令是FTP伺服器使用者使用最頻繁的命令之一,熟悉並靈活的運用FTP命令,可以大大的方便使用者。 我們假設有一臺FTP Server, FTP Server :192.168.80.17, 使用者名稱:username 密碼:user1234 。在本地電腦
Java 從指定URL下載檔案並儲存到指定目錄
從指定的URL下載檔案,並儲存到本地,近期開發過程中用的這個功能比較多,特此記錄!1.基本流程當我們想要下載網站上的某個資源時,我們會獲取一個url,它是伺服器定位資源的一個描述,下載的過程有如下幾步:(1)客戶端發起一個url請求,獲取連線物件。(2)伺服器解析url,並且
Java從伺服器下載檔案到本地
我的需求是從伺服器端的某磁碟中獲取amr檔案,並下載。 首先傳遞的引數strUrl為物理路徑,是絕對路徑。 //獲取檔名,此處看個人如何設計的 String filename = strUrl.substring(strUrl.lastIndexOf("/")+1); filena
java 從伺服器下載檔案並儲存到本地
最近在做專案,做到檔案的下載,假設公司有檔案伺服器(像ftp或者其他),像開發人員怎麼進行從檔案伺服器上下載檔案到本地指定目錄下!又或者需要從網上下載資源到本地指定的目錄下,這時候最需要關心的幾個問題就是: (1)客戶端發起一個url請求,獲取連線物件。
Java Web實現使用瀏覽器從伺服器下載檔案(後臺)
Java Web實現 使用瀏覽器從伺服器下載檔案。 下面實現兩種情況的下載,需求如下:需求(一):1、使用者在頁面填寫表單。 2、填寫完成後,選擇下載,將表單內容發往後臺。 3、後臺根據內容生產一個檔案,傳送給前端。 4、前端成功下載檔案到本地。 此需求簡單來說就是,使用者在
Java從伺服器下載檔案到本地(親測有效)
我用的是swagger 前後臺分離的專案 我的需求是從伺服器端的某磁碟中獲取按模板生成的word檔案,並下載。 思路: 按模板在伺服器上生成一個word文件 通過流的方式讀取word響應給瀏覽器 最後刪除在伺服器生成的word文件 public void word
Java通過sftp從目標主機下載檔案後讀取入庫,經過處理後推送到目標主機
在FileZilla 中: - 用sftp協議連線Server ,需要用port 22 - 用ftp協議連線Server, 用port21如果你的目標主機port是22,則是用sftp方式傳送,下載檔案,見下圖,該主機埠為22一、連線目標主機下載目標檔案到本方主機,讀取本方主
java從伺服器下載檔案
static public String downloadPrintFile(String filename, String dir) throws IOException {// 獲取檔案存放路徑File pf = new File(PrintTask.class.get
Mac下SFTP連線伺服器下載檔案
Mac下SFTP連線伺服器下載檔案 由於工作上遇到了關於連線sftp伺服器的問題,故記錄下來 2018-08-08 HZ 連線伺服器 sftp /*[email protected]/*host 系統會提示你 The authen
使用“rz -be”命令上傳檔案至伺服器;使用“sz 檔名”從伺服器下載檔案到本地
我們知道在與linux 做檔案交換的時候,經常會使用到windows 檔案上傳到linux 或者linux 檔案下載到windows之類的情況,其中大家使用比較常用的就是 Xftp,sftp,FileZilla等,那麼今天就介紹另外一種方式上傳與下載檔案rz/sz 測試環境: CentOs
java實現從服務端下載檔案
這邊用一個簡單的servlet實現java從服務端下載檔案的操作 寫一個servlet: <servlet> <servlet-name>DownloadServlet</servlet-name> <serv
瀏覽器從伺服器下載檔案的Servlet例項
測試兩種下載:瀏覽器通過伺服器下載其他網站檔案(http協議);瀏覽器下載伺服器本地硬盤裡的檔案(file協議) 1.工具類downloadUtils.java的核心部分 //伺服器使客戶端可以從遠端url下載檔案 public void download(String
從伺服器下載檔案DOWNLOAD_WEB_OBJECT
FORM DOWNLOAD_EXCEL_DATA USING FP_DOWN_FILE LIKE sapb-sappfad. data: l_down_save LIKE rlgrap-filename. DATA: l_qty like vbap-kwmeng. "pri_pack-cqty. d