java FTP 上传文件的简单例子

[Java]代码

 
01本代码需要 commons-net-3.1.jar 包的支持
02  
03官方网站  :  http://commons.apache.org/net/

package cn.namemax.job.schedule;


 import java.io.IOException; 
 import java.io.InputStream; 

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.commons.net.ftp.FTPClient; 
import org.apache.commons.net.ftp.FTPReply;  

   public class FtpUploadUtil { 
  private static final Log logger = LogFactory.getLog(DestineDomainJob.class);  
     /**
      * Description: 向FTP服务器上传文件
      * @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, String port, String username, String password, String path, String filename, InputStream input) {
         boolean returnValue = false;
         FTPClient ftp =new FTPClient();
         try{ 
             int reply;     
             // 判断是否使用默认端口

         //没有找到该引用
             if(CMCts.EMP.equals(port))
                 ftp.connect(url);
             }else { 
                 int portNO = Integer.parseInt(port); 
                 ftp.connect(url, portNO);// 连接FTP服务器
             }
             ftp.login(username, password);// 登录
             reply = ftp.getReplyCode();
             if(!FTPReply.isPositiveCompletion(reply)) { 
                 ftp.disconnect();
                 logger.info("FTP SERVER REFUSED CONNECTION.");
                 return returnValue; 
             }
             ftp.changeWorkingDirectory(path);
             ftp.storeFile(filename, input);    
             input.close();    
             ftp.logout();
             returnValue =true; 
         }catch (IOException e) {
             logger.info("FTPUPLOADUTIL UPLOD FILE ERROR :"+ e); 
             e.printStackTrace();
         }finally { 
             if(ftp.isConnected()) { 
                 try{ 
                     ftp.disconnect();
                 }catch (IOException ioe) {
                 }
             }
         }
         return returnValue; 
     } 
   
 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值