JAVA实现FTP文件上传功能
博客专区 > Release 的博客 > 博客详情
JAVA实现FTP文件上传功能
Release 发表于3年前
JAVA实现FTP文件上传功能
  • 发表于 3年前
  • 阅读 41
  • 收藏 1
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

摘要: 集群各server间的文件共享解决方案
package com.sinosoft.sepmis.util;
     
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;

import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;


/**
* Java自带的API对FTP的操作
* @Title:Ftp.java
* @author: shanhongzhi 
*/
public class FtpUtil {
    /** 
     * Description: 向FTP服务器上传文件 
     * @param url FTP服务器hostname 
     * @param port FTP服务器端口,如果默认端口请写-1 
     * @param username FTP登录账号 
     * @param password FTP登录密码 
     * @param path FTP服务器保存目录 
     * @param filename 上传到FTP服务器上的文件名 
     * @param input 输入流 
     * @return 成功返回true,否则返回false 
     */  
    public static boolean uploadFile(String url, int port, String username, String password, String path,  
        String filename, InputStream input)  throws Exception
    {  
        boolean success = false;  
        FTPClient ftp = new FTPClient();
        try  
        {  
            int reply;  
              
            // 连接FTP服务器  
            if (port > -1)  
            {  
                ftp.connect(url, port);  
            }  
            else  
            {  
                ftp.connect(url);  
            }  
              
            // 登录FTP  
            ftp.login(username, password);  
            reply = ftp.getReplyCode(); 
            System.out.println(reply);
            if (!FTPReply.isPositiveCompletion(reply))  
            {  
                ftp.disconnect();  
                return success;  
            }  
            ftp.changeWorkingDirectory(path);  
            ftp.storeFile(filename, input);
            input.close();  
            ftp.logout();  
            success = true;  
        }  
        catch (IOException e)  
        {  
            success = false;  
            throw e;
        }  
        finally  
        {  
            if (ftp.isConnected())  
            {  
                try  
                {  
                    ftp.disconnect();  
                }  
                catch (IOException e)  
                {  
                    throw e;
                }  
            }  
        }  
        return success;  
    }  
   public static void main(String agrs[]) {
      try {
          File file = new File("E:\\1.txt");
          FileInputStream in = new FileInputStream(file);
          /*
           * 使用默认的端口号、用户名、密码以及根目录连接FTP服务器
          */
          //返回true上传成功,否则上传失败
         // FtpUtil.uploadFile("192.168.61.209", -22, "instiaci", "instiaci", "/db2home/instiaci/personal/shanhz","2.txt",in);
          FtpUtil.uploadFile("192.168.61.104", 22, "administrator", "123456", "/sinopipi/IC","6.txt",in);
    } catch (Exception e) {
        e.printStackTrace();
    }
    }
}

说明:使用apache提供的commons-net-2.0.jar自带的ftp功能,也可以实现文件下载功能






































共有 人打赏支持
粉丝 2
博文 13
码字总数 2909
×
Release
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: