亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

java使用ftp上傳文件示例分享

2019-11-26 15:41:59
字體:
來源:轉載
供稿:網友

復制代碼 代碼如下:

import java.io.ByteArrayInputStream; 
import java.io.FileOutputStream; 
import java.io.IOException; 
import java.net.SocketException; 
import java.text.SimpleDateFormat; 
import java.util.Date; 

import org.apache.commons.io.IOUtils; 
import org.apache.commons.net.ftp.FTPClient; 

/**
 * class name:FTPFileTransmit <BR>
 * class description: please write your description <BR>
 * Remark: <BR>
 * @version 1.00 2011-8-9
 */ 
public class FTPFileTransmit { 

    private String ftpPath; 
    private String ftpName; 
    private String ftpPassword; 
    private String ftpServerIP; 

    public FTPFileTransmit() { 
        this.ftpPath = "xxx/xxx/"; 
        this.ftpName = "name"; 
        this.ftpPassword = "pass"; 
        this.ftpServerIP = "192.168.0.xx"; 
    } 

     
    /**
     * Method name: saveInFTP <BR>
     * Description: 把文件存儲在FTP上 <BR>
     * Remark: <BR>
     * @param FolderName            示例"xxx/xxx/"
     * @param FileName              示例"thefilename"
     * @param data                  byte[]數組
     * @return  boolean<BR>
     */ 
    public boolean saveInFTP (String FolderName, String FileName, byte[] data) { 
        boolean flag = false; 

        // 創建FTP客戶端  
        FTPClient ftpClient = new FTPClient(); 
        // 輸入流用于讀取文件  
//      FileInputStream fis = null;  
        ByteArrayInputStream bis = null; 

        try { 
            // 如果FolderName 和 FileName都不符合基本要求, 那么就沒有必要進行ftp操作  
            if (FolderName != null 
                    && FolderName.compareTo("") != 0 
                    && FileName != null 
                    && FileName.compareTo("") != 0) { 

                // 建立FTP連接  
                ftpClient.connect(this.ftpServerIP); 

                // 如果登錄成功后, 才進行創建輸入流  
                if (ftpClient.login(this.ftpName, this.ftpPassword)) { 
//                  File srcClientFile = new File("C:/ParseXML.xml");  

                    // 實例化輸入流  
//                  fis = new FileInputStream(srcClientFile);  

                    if (ftpClient.changeWorkingDirectory(FolderName)) { 
                        // 將byte[]寫入到輸入流中, 實例化  
                        bis = new ByteArrayInputStream(data); 

                        // 設置緩沖  
                        ftpClient.setBufferSize(1024); 

                        // 設置文件類型(二進制類型)  
                        if (ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE)) { 
                            flag = ftpClient.storeFile(FileName, bis); 
                        } 
                    } 
                } 
            } 
        } catch (SocketException e) { 
            e.printStackTrace(); 
            flag = false; 
        } catch (IOException e) { 
            e.printStackTrace(); 
            flag = false; 
        } catch (Exception e) { 
            e.printStackTrace(); 
            flag = false; 
        } finally { 
            try { 
                // 關閉輸入流  
                IOUtils.closeQuietly(bis); 
                // 關閉連接  
                ftpClient.disconnect(); 
            } catch (IOException e) { 
                e.printStackTrace(); 
            } 
        } 

        return flag; 
    } 

    /**
     * Method name: getFromFTP <BR>
     * Description: 從FTP上讀取文件 <BR>
     * Remark: <BR>
     * @return  boolean<BR>
     */ 
    public boolean getFromFTP () { 
        boolean flag = false; 

        // 創建FTP客戶端  
        FTPClient ftpClient = new FTPClient(); 
        // 輸出流用于輸出文件  
        FileOutputStream fos = null; 

        try { 
            // 建立FTP連接  
            ftpClient.connect(this.ftpServerIP); 
            // 如果登錄成功后, 才進行創建輸出流  
            if (ftpClient.login(this.ftpName, this.ftpPassword)) { 
                // FTP文件  
                String distinationFile = "/name/xxx/xxx/xxx文件"; 
                // 實例化輸出流  
                fos = new FileOutputStream("C:/ParseXML_InFTP.xml"); 

                // 設置緩沖  
                ftpClient.setBufferSize(1024); 

                // 設置文件類型(二進制類型)  
                if (ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE)) { 
                    ftpClient.retrieveFile(distinationFile, fos); 
                    flag = true; 
                } 
            } 
        } catch (SocketException e) { 
            e.printStackTrace(); 
            flag = false; 
        } catch (IOException e) { 
            e.printStackTrace(); 
            flag = false; 
        } catch (Exception e) { 
            e.printStackTrace(); 
            flag = false; 
        } finally { 
            try { 
                // 關閉輸出流  
                IOUtils.closeQuietly(fos); 
                // 關閉連接  
                ftpClient.disconnect(); 
            } catch (IOException e) { 
                e.printStackTrace(); 
            } 
        } 

        return flag; 
    } 

    public boolean createDirectory() { 
        boolean flag = false; 

        // 創建FTP客戶端  
        FTPClient ftpClient = new FTPClient(); 

        try { 
            // 建立FTP連接  
            ftpClient.connect(this.ftpServerIP); 
            // 如果登錄成功后, 才進行操作  
            if (ftpClient.login(this.ftpName, this.ftpPassword)) { 

                // 切換文件路徑, 到FTP上的"NNDD3"文件夾下  
                if (this.ftpPath != null && this.ftpPath.compareTo("") != 0 
                        && ftpClient.changeWorkingDirectory(this.ftpPath)) { 
                    SimpleDateFormat f = new SimpleDateFormat("yyyyMMdd"); 
                    String time = f.format(new Date()); 

                    String FolderName = time + "_ReTransmit"; 
                    ftpClient.makeDirectory(FolderName); 
                    flag = true; 
                } 
            } 
        } catch (SocketException e) { 
            e.printStackTrace(); 
            flag = false; 
        } catch (IOException e) { 
            e.printStackTrace(); 
            flag = false; 
        } catch (Exception e) { 
            e.printStackTrace(); 
            flag = false; 
        } finally { 
            try { 
                // 關閉連接  
                ftpClient.disconnect(); 
            } catch (IOException e) { 
                e.printStackTrace(); 
            } 
        } 

        return flag; 
    } 

    public String[] getAllFolderNames () { 
        // 創建FTP客戶端  
        FTPClient ftpClient = new FTPClient(); 

        try { 
            // 建立FTP連接  
            ftpClient.connect(this.ftpServerIP); 

            // 如果登錄成功后, 才進行操作  
            if (ftpClient.login(this.ftpName, this.ftpPassword)) { 

                // 切換文件路徑, 到FTP上的"NNDD3"文件夾下  
                if (this.ftpPath != null && this.ftpPath.compareTo("") != 0 
                        && ftpClient.changeWorkingDirectory(this.ftpPath)) { 
                    // 將當前時間減去2天, 刪除的是前兩天的數據包  
                    String time = minusTime(); 

                    String[] allNames = ftpClient.listNames(); 

                    String[] temp = new String[allNames.length]; 
                    // 初始化數組  
                    for (int j = 0; j < allNames.length; j ++) { 
                        temp[j] = ""; 
                    } 

                    // 找出要刪除文件夾的名稱  
                    for (int i = 0; i < allNames.length; i ++) { 
                        if (allNames[i].substring(0, 8).compareTo(time) <= 0) { 
                            temp[i] = allNames[i]; 
                        } 
                    } 

                    return temp; 
                } 
            } 
        } catch (SocketException e) { 
            e.printStackTrace(); 
        } catch (IOException e) { 
            e.printStackTrace(); 
        } finally { 
            try { 
                // 關閉連接  
                ftpClient.disconnect(); 
            } catch (IOException e) { 
                e.printStackTrace(); 
            } 
        } 

        return null; 
    } 

    /**
     * 
     * Method name: minusTime <BR>
     * Description: 獲取錢兩天的時間,如2011-8-1的前兩天就是2011-7-30 <BR>
     * Remark: <BR>
     * @return  String<BR>
     */ 
    private String minusTime() { 
        SimpleDateFormat df=new SimpleDateFormat("yyyyMMdd");    
        Date d = new Date(); 
        String timeMinus2 = df.format(new Date(d.getTime() - 2 * 24 * 60 * 60 * 1000));    
        return timeMinus2; 
    } 

    public static void main(String[] args) { 
        FTPFileTransmit ftpFileTransmit = new FTPFileTransmit(); 
        ftpFileTransmit.deleteFoldersInFTP(); 

//      boolean flag = ftpFileTransmit.createDirectory();  
//      if (flag) {  
//          System.out.println("****** FTP文件夾創建成功 ******");  
//      }  

//      String FolderName = ftpFileTransmit.ftpPath + "20110809_ReTransmit/";  
//      byte[] data = new byte[1024];  
//      for (int i = 0; i < data.length; i ++) {  
//          data[i] = 'a';  
//      }  
//      boolean flag = ftpFileTransmit.saveInFTP(FolderName, "2011080912345678" ,data);  
//      if (flag) {  
//          System.out.println("****** FTP文件夾創建成功 ******");  
//      }  
    } 
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲成人aaa| 亚洲精品福利视频| 成人亚洲激情网| 久久香蕉精品香蕉| 国产视频久久久久久久| 亚洲大胆人体av| 日韩av一区二区在线观看| 日韩av在线看| 欧美怡红院视频一区二区三区| 国产成人一区二| 欧美中文字幕视频在线观看| 日韩视频精品在线| 中文字幕在线看视频国产欧美| 日韩免费av在线| 中文字幕在线国产精品| 精品中文字幕在线2019| 欧美激情综合亚洲一二区| 国产98色在线| 亚洲精品影视在线观看| 亚洲人成网站色ww在线| 欧美放荡办公室videos4k| 91在线免费看网站| 久久亚洲精品一区二区| 色综合久久中文字幕综合网小说| 亚洲精品98久久久久久中文字幕| 亚洲精品资源美女情侣酒店| 2020欧美日韩在线视频| 亚洲xxxxx电影| 主播福利视频一区| 久久在线免费观看视频| 欧美激情视频播放| 69国产精品成人在线播放| 欧美巨猛xxxx猛交黑人97人| 亚洲激情电影中文字幕| 91最新国产视频| 亚洲最大中文字幕| 成人h视频在线| 色妞一区二区三区| 性色av一区二区三区免费| 亚洲97在线观看| 成人欧美在线视频| 久久成人国产精品| 日韩视频免费大全中文字幕| 亚洲精品中文字| 国模吧一区二区| 久久综合久久88| 欧美福利在线观看| 伊人伊成久久人综合网小说| 日韩av不卡在线| 成人精品aaaa网站| 久久久91精品国产一区不卡| 中国人与牲禽动交精品| 欧美大片网站在线观看| 欧美精品第一页在线播放| 亚洲毛茸茸少妇高潮呻吟| 国产精品久久久久久网站| 在线日韩精品视频| 5566日本婷婷色中文字幕97| 亚洲人av在线影院| 在线视频一区二区| 中文字幕欧美精品在线| 永久免费看mv网站入口亚洲| 亚洲国产97在线精品一区| 庆余年2免费日韩剧观看大牛| 久久大大胆人体| 成人av色在线观看| 欧美日韩国产成人在线观看| 亚洲精品wwwww| 91av成人在线| 久久国产精品视频| 亚洲男人天堂网站| 久久久久久av| 国产成人精品视频| 欧美激情精品久久久久久变态| 亚洲va欧美va在线观看| 中文字幕在线成人| 国产免费一区二区三区在线能观看| 日韩电视剧免费观看网站| 日韩精品视频观看| 欧美大片免费看| 欧美激情免费视频| 亚洲网在线观看| 精品国内亚洲在观看18黄| 久久天堂av综合合色| 精品视频久久久久久久| 国产成人精品一区二区在线| 日韩免费不卡av| 亚洲热线99精品视频| 日韩av网站大全| 久久亚洲成人精品| 国产精品偷伦一区二区| 欧美性受xxxx黑人猛交| 日韩美女毛茸茸| 久久精品久久久久久国产 免费| 日韩av手机在线观看| 2020欧美日韩在线视频| 亚洲成人激情图| 国产亚洲在线播放| 亚洲aⅴ男人的天堂在线观看| 在线观看日韩专区| 伊人伊人伊人久久| 久久九九有精品国产23| 亚洲大胆人体视频| 亚洲sss综合天堂久久| 在线观看久久av| 国模视频一区二区| 亚洲乱码国产乱码精品精天堂| 欧美性videos高清精品| 欧美一级片免费在线| 欧美夫妻性生活视频| 亚洲深夜福利视频| 国产91成人在在线播放| 国精产品一区一区三区有限在线| 欧美精品激情视频| 国产日韩在线观看av| 欧美裸体视频网站| 久久久久久久久综合| 亚洲精品天天看| 色狠狠av一区二区三区香蕉蜜桃| 亚洲丁香久久久| 海角国产乱辈乱精品视频| 色婷婷av一区二区三区在线观看| 国产成人aa精品一区在线播放| 成人情趣片在线观看免费| 精品中文字幕在线观看| 日韩在线www| 国产亚洲激情在线| 韩国福利视频一区| 国产精品视频中文字幕91| 亚洲欧美在线免费| 欧美日韩激情视频8区| 91精品国产91久久| 国产成人一区二区在线| 亚洲欧美日韩第一区| 国语自产精品视频在免费| 美女国内精品自产拍在线播放| 欧美精品福利视频| 亚洲国产美女久久久久| 亚洲一级免费视频| 亚洲国产一区二区三区四区| 欧美性开放视频| 97av视频在线| 91久久国产婷婷一区二区| 国产精品网站大全| 亚洲va男人天堂| 日韩亚洲欧美中文高清在线| 国产成+人+综合+亚洲欧美丁香花| 亚洲伊人第一页| 一本一道久久a久久精品逆3p| 精品精品国产国产自在线| 亚洲女人天堂色在线7777| 国产成人精品亚洲精品| 性日韩欧美在线视频| 亚洲男人天堂久| 一本一道久久a久久精品逆3p| 国内免费精品永久在线视频| 久久久久久91| 精品国产一区二区三区久久狼5月| 91丨九色丨国产在线| 欧美精品一区二区三区国产精品| 永久免费毛片在线播放不卡| 国产高清在线不卡| 亚洲高清av在线| 91在线视频导航|