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

首頁 > 網站 > Apache > 正文

Java利用apache ftp工具實現文件上傳下載和刪除功能

2024-08-27 18:25:11
字體:
來源:轉載
供稿:網友

利用apache ftp工具實現文件的上傳下載和刪除,具體如下

1、下載相應的jar包

     commons-net-1.4.1.jar

2、實現代碼如下:

public class FtpUtils {     //ftp服務器地址     public String hostname = "192.168.1.249";     //ftp服務器端口號默認為21     public Integer port = 21 ;     //ftp登錄賬號     public String username = "root";     //ftp登錄密碼     public String password = "123";          public FTPClient ftpClient = null;          /**      * 初始化ftp服務器      */     public void initFtpClient() {       ftpClient = new FTPClient();       ftpClient.setControlEncoding("utf-8");       try {         System.out.println("connecting...ftp服務器:"+this.hostname+":"+this.port);          ftpClient.connect(hostname, port); //連接ftp服務器         ftpClient.login(username, password); //登錄ftp服務器         int replyCode = ftpClient.getReplyCode(); //是否成功登錄服務器         if(!FTPReply.isPositiveCompletion(replyCode)){           System.out.println("connect failed...ftp服務器:"+this.hostname+":"+this.port);          }         System.out.println("connect successfu...ftp服務器:"+this.hostname+":"+this.port);        }catch (MalformedURLException e) {          e.printStackTrace();        }catch (IOException e) {          e.printStackTrace();        }      }      /**     * 上傳文件     * @param pathname ftp服務保存地址     * @param fileName 上傳到ftp的文件名     * @param originfilename 待上傳文件的名稱(絕對地址) *     * @return     */     public boolean uploadFile( String pathname, String fileName,String originfilename){       boolean flag = false;       InputStream inputStream = null;       try{         System.out.println("開始上傳文件");         inputStream = new FileInputStream(new File(originfilename));         initFtpClient();         ftpClient.setFileType(ftpClient.BINARY_FILE_TYPE);         CreateDirecroty(pathname);         ftpClient.makeDirectory(pathname);         ftpClient.changeWorkingDirectory(pathname);         ftpClient.storeFile(fileName, inputStream);         inputStream.close();         ftpClient.logout();         flag = true;         System.out.println("上傳文件成功");       }catch (Exception e) {         System.out.println("上傳文件失敗");         e.printStackTrace();       }finally{         if(ftpClient.isConnected()){            try{             ftpClient.disconnect();           }catch(IOException e){             e.printStackTrace();           }         }          if(null != inputStream){           try {             inputStream.close();           } catch (IOException e) {             e.printStackTrace();           }          }        }       return true;     }     /**      * 上傳文件      * @param pathname ftp服務保存地址      * @param fileName 上傳到ftp的文件名      * @param inputStream 輸入文件流      * @return      */     public boolean uploadFile( String pathname, String fileName,InputStream inputStream){       boolean flag = false;       try{         System.out.println("開始上傳文件");         initFtpClient();         ftpClient.setFileType(ftpClient.BINARY_FILE_TYPE);         CreateDirecroty(pathname);         ftpClient.makeDirectory(pathname);         ftpClient.changeWorkingDirectory(pathname);         ftpClient.storeFile(fileName, inputStream);         inputStream.close();         ftpClient.logout();         flag = true;         System.out.println("上傳文件成功");       }catch (Exception e) {         System.out.println("上傳文件失敗");         e.printStackTrace();       }finally{         if(ftpClient.isConnected()){            try{             ftpClient.disconnect();           }catch(IOException e){             e.printStackTrace();           }         }          if(null != inputStream){           try {             inputStream.close();           } catch (IOException e) {             e.printStackTrace();           }          }        }       return true;     }     //改變目錄路徑      public boolean changeWorkingDirectory(String directory) {         boolean flag = true;         try {           flag = ftpClient.changeWorkingDirectory(directory);           if (flag) {            System.out.println("進入文件夾" + directory + " 成功!");            } else {             System.out.println("進入文件夾" + directory + " 失??!開始創建文件夾");           }         } catch (IOException ioe) {           ioe.printStackTrace();         }         return flag;       }      //創建多層目錄文件,如果有ftp服務器已存在該文件,則不創建,如果無,則創建     public boolean CreateDirecroty(String remote) throws IOException {       boolean success = true;       String directory = remote + "/";       // 如果遠程目錄不存在,則遞歸創建遠程服務器目錄       if (!directory.equalsIgnoreCase("/") && !changeWorkingDirectory(new String(directory))) {         int start = 0;         int end = 0;         if (directory.startsWith("/")) {           start = 1;         } else {           start = 0;         }         end = directory.indexOf("/", start);         String path = "";         String paths = "";         while (true) {           String subDirectory = new String(remote.substring(start, end).getBytes("GBK"), "iso-8859-1");           path = path + "/" + subDirectory;           if (!existFile(path)) {             if (makeDirectory(subDirectory)) {               changeWorkingDirectory(subDirectory);             } else {               System.out.println("創建目錄[" + subDirectory + "]失敗");               changeWorkingDirectory(subDirectory);             }           } else {             changeWorkingDirectory(subDirectory);           }            paths = paths + "/" + subDirectory;           start = end + 1;           end = directory.indexOf("/", start);           // 檢查所有目錄是否創建完畢           if (end <= start) {             break;           }         }       }       return success;     }     //判斷ftp服務器文件是否存在       public boolean existFile(String path) throws IOException {         boolean flag = false;         FTPFile[] ftpFileArr = ftpClient.listFiles(path);         if (ftpFileArr.length > 0) {           flag = true;         }         return flag;       }     //創建目錄     public boolean makeDirectory(String dir) {       boolean flag = true;       try {         flag = ftpClient.makeDirectory(dir);         if (flag) {           System.out.println("創建文件夾" + dir + " 成功!");          } else {           System.out.println("創建文件夾" + dir + " 失?。?);         }       } catch (Exception e) {         e.printStackTrace();       }       return flag;     }          /** * 下載文件 *     * @param pathname FTP服務器文件目錄 *     * @param filename 文件名稱 *     * @param localpath 下載后的文件路徑 *     * @return */     public boolean downloadFile(String pathname, String filename, String localpath){        boolean flag = false;        OutputStream os=null;       try {          System.out.println("開始下載文件");         initFtpClient();         //切換FTP目錄          ftpClient.changeWorkingDirectory(pathname);          FTPFile[] ftpFiles = ftpClient.listFiles();          for(FTPFile file : ftpFiles){            if(filename.equalsIgnoreCase(file.getName())){              File localFile = new File(localpath + "/" + file.getName());              os = new FileOutputStream(localFile);              ftpClient.retrieveFile(file.getName(), os);              os.close();            }          }          ftpClient.logout();          flag = true;          System.out.println("下載文件成功");       } catch (Exception e) {          System.out.println("下載文件失敗");         e.printStackTrace();        } finally{          if(ftpClient.isConnected()){            try{             ftpClient.disconnect();           }catch(IOException e){             e.printStackTrace();           }         }          if(null != os){           try {             os.close();           } catch (IOException e) {             e.printStackTrace();           }          }        }        return flag;      }          /** * 刪除文件 *     * @param pathname FTP服務器保存目錄 *     * @param filename 要刪除的文件名稱 *     * @return */      public boolean deleteFile(String pathname, String filename){        boolean flag = false;        try {          System.out.println("開始刪除文件");         initFtpClient();         //切換FTP目錄          ftpClient.changeWorkingDirectory(pathname);          ftpClient.dele(filename);          ftpClient.logout();         flag = true;          System.out.println("刪除文件成功");       } catch (Exception e) {          System.out.println("刪除文件失敗");         e.printStackTrace();        } finally {         if(ftpClient.isConnected()){            try{             ftpClient.disconnect();           }catch(IOException e){             e.printStackTrace();           }         }        }       return flag;      }          public static void main(String[] args) {       FtpUtils ftp =new FtpUtils();        //ftp.uploadFile("ftpFile/data", "123.docx", "E://123.docx");       //ftp.downloadFile("ftpFile/data", "123.docx", "F://");       ftp.deleteFile("ftpFile/data", "123.docx");       System.out.println("ok");     } } 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久色乳综合思思在线视频| 日韩中文字幕亚洲| 欧洲精品毛片网站| 91精品久久久久久久久久另类| 日韩av中文字幕在线免费观看| 黑人欧美xxxx| 综合国产在线观看| 日本伊人精品一区二区三区介绍| 久久精品国产久精国产思思| 久久久av网站| 成人国产精品免费视频| 亚洲人成在线观看| 国产999在线观看| 最近2019年好看中文字幕视频| 亚洲欧美成人一区二区在线电影| 国产精品小说在线| 亚洲成人av中文字幕| 久久综合免费视频| 久久国产天堂福利天堂| 一区二区福利视频| 欧美成人精品在线播放| 九九热99久久久国产盗摄| 欧美精品aaa| 久久精品在线播放| 亚洲一区二区精品| 成人免费看吃奶视频网站| 亚洲最新视频在线| 蜜月aⅴ免费一区二区三区| 国产精品video| 中文字幕精品视频| 欧美极品第一页| 亚洲情综合五月天| 久久久久一本一区二区青青蜜月| 国产一区二区三区视频| 久久久精品视频成人| 亚洲欧美在线免费观看| 亚洲欧美日韩爽爽影院| 欧美伊久线香蕉线新在线| 欧美高清视频免费观看| 亚洲专区中文字幕| 少妇高潮 亚洲精品| 日韩精品视频在线免费观看| 97色在线观看免费视频| 亚洲天堂av在线播放| 欧美激情精品久久久久久久变态| 国产精品久久久av久久久| 亚洲美女精品久久| 国产精品一区二区久久久| 国产91在线播放| 欧美丰满老妇厨房牲生活| 亚洲国产欧美日韩精品| 日韩av在线资源| 色综合亚洲精品激情狠狠| 这里只有精品在线观看| 福利一区视频在线观看| 18一19gay欧美视频网站| 色综合伊人色综合网站| 最近免费中文字幕视频2019| 国自产精品手机在线观看视频| 国产欧美日韩中文| 国产精品69久久| 精品久久久久久中文字幕一区奶水| 亚洲人成77777在线观看网| 97成人超碰免| 中文字幕一区电影| 精品国产精品自拍| 日韩精品免费一线在线观看| 亚洲精品国产精品国自产观看浪潮| 日韩美女视频免费看| 日韩激情片免费| 中文字幕免费精品一区| 成人网址在线观看| 性色av一区二区三区在线观看| 日韩久久精品电影| 亚洲第一页中文字幕| 欧美成人免费在线视频| 国产精品一香蕉国产线看观看| 国产精品999| 51ⅴ精品国产91久久久久久| 国产精品视频男人的天堂| 97在线观看视频国产| …久久精品99久久香蕉国产| 岛国视频午夜一区免费在线观看| 欧美激情一区二区三级高清视频| 91日本视频在线| 国产精品成人va在线观看| 91亚洲国产成人久久精品网站| 久久久久久国产精品| 性色av香蕉一区二区| 久久久久久久久电影| 亚洲国产91精品在线观看| 国产精品偷伦视频免费观看国产| 国产精品福利小视频| 国产自产女人91一区在线观看| 国产成人亚洲综合91精品| 亚洲免费视频一区二区| 国产精品福利网| 亚洲成人中文字幕| 成人国产在线视频| 亚洲国产成人久久综合| 国产69久久精品成人看| 91亚洲精品在线| 国产精品免费福利| 国产91|九色| 欧美激情aaaa| 久久伊人精品天天| 国产日韩欧美电影在线观看| 国产精品普通话| 中文字幕不卡在线视频极品| 欧美日韩成人在线观看| 精品福利在线看| 亚洲人成五月天| 国产精品高清在线观看| 欧美午夜宅男影院在线观看| 欧美一级淫片播放口| 欧美巨大黑人极品精男| 久久精品欧美视频| 日本精品视频网站| 日韩免费看的电影电视剧大全| 91久久夜色精品国产网站| 精品国产鲁一鲁一区二区张丽| 国产免费一区二区三区在线能观看| 国产精品色悠悠| 欧美精品videossex性护士| 国产日产亚洲精品| 国产精品稀缺呦系列在线| 日本一区二三区好的精华液| 日韩av综合网站| 久久精品国产成人精品| 欧美日韩久久久久| 亚洲最大成人在线| 色综久久综合桃花网| 91精品综合视频| 国产精品日韩专区| 国产日韩欧美在线| 一区二区三区久久精品| 成人444kkkk在线观看| 国产日韩精品在线播放| 欧美疯狂xxxx大交乱88av| 欧美另类在线播放| 成人免费福利在线| 国产成人精品999| 欧美裸体xxxx| 欧美日韩国产专区| 一本色道久久88亚洲综合88| 最近2019好看的中文字幕免费| 91夜夜未满十八勿入爽爽影院| 国产精品视频xxxx| 亚洲一区二区三区sesese| 国产中文欧美精品| 热re91久久精品国99热蜜臀| 欧美成人精品一区二区三区| 日韩精品视频三区| 国产精品一区二区三区久久| 日韩在线播放av| 91精品国产九九九久久久亚洲| 亚洲91精品在线观看| 亚洲欧美日韩国产成人| 97精品视频在线观看| 久久视频在线看| 亚洲第一免费网站| 久热精品在线视频| 4k岛国日韩精品**专区| 日韩亚洲成人av在线|