歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Java中使用FTPClient實現文件上傳下載

在JAVA程序中,經常需要和FTP打交道,比如向FTP服務器上傳文件、下載文件,本文簡單介紹如何利用jakarta commons中的FTPClient(在commons-net包中)實現上傳下載文件。

所用到的jar包有: 
commons-net-1.4.1.jar 
jakarta-oro.jar 

一、上傳文件

文件上傳源代碼 

       /** 
    * Description: 向FTP服務器上傳文件 
    * @Version1.0 
    * @param url FTP服務器hostname 
    * @param port FTP服務器端口 
    * @param username FTP登錄賬號 
    * @param password FTP登錄密碼 
    * @param path FTP服務器保存目錄 
    * @param filename 上傳到FTP服務器上的文件名 
    * @param input 輸入流 
    * @return 成功返回true,否則返回false 
    */   
    public static boolean uploadFile( 
            String url,//FTP服務器hostname 
            int port,//FTP服務器端口 
            String username, // FTP登錄賬號 
            String password, //FTP登錄密碼 
            String path, //FTP服務器保存目錄 
            String filename, //上傳到FTP服務器上的文件名 
            InputStream input // 輸入流 
            ) {   
        boolean success = false;   
        FTPClient ftp = new FTPClient();   
        try {   
            int reply;   
            ftp.connect(url, port);//連接FTP服務器   
            //如果采用默認端口,可以使用ftp.connect(url)的方式直接連接FTP服務器   
            ftp.login(username, password);//登錄   
            reply = ftp.getReplyCode();   
            if (!FTPReply.isPositiveCompletion(reply)) {   
                ftp.disconnect();   
                return success;   
            }   
            ftp.changeWorkingDirectory(path);   
            ftp.storeFile(filename, input);           
               
            input.close();   
            ftp.logout();   
            success = true;   
        } catch (IOException e) {   
            e.printStackTrace();   
        } finally {   
            if (ftp.isConnected()) {   
                try {   
                    ftp.disconnect();   
                } catch (IOException ioe) {   
                }   
            }   
        }   
        return success;   
    } 

Copyright © Linux教程網 All Rights Reserved