jsch下載文件的兩個注意點


1.關於sftp文件上傳和下載的網上很多code,此處就不多寫了。主要記錄下工作中遇到的兩個問題需要多注意。

1.判斷sftp遠程文件是否存在,通過異常捕獲來判斷該文件是否存在,存在返回SftpATTRS對象。

try{

String filename = "/home/omc/ylong/sftp/INTPahcfg.tar.gz";
        SftpATTRS attr = chSftp.stat(filename);
        long fileSize = attr.getSize();

}catch(Exception e){}

2.查詢sftp遠程文件列表名稱,根據文件下載列表來動態下載。

LsEntry 可以認為是文件服務器上的文件條目信息,把包含文件或者目錄相關屬性 。ls命令返回的Vector中的就是LsEntry對象列表。

Vector<LsEntry> list = null;
         try {
             list = channel.ls(channel.pwd());
         } catch (SftpException e) {
             logger.error("can not list directory",e);
             return false;
         }
         
         for(LsEntry entry : list){
             String fileName = entry.getFilename();
             if(!fileName.equals(".") && !fileName.equals("..")){
                 if(entry.getAttrs().isDir()){
                     delDir(fileName);
                 } else {
                     delFile(fileName);
                 }
             }
         }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM