博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java FTP 上传文件
阅读量:6070 次
发布时间:2019-06-20

本文共 2020 字,大约阅读时间需要 6 分钟。

hot3.png

本代码需要 commons-net-3.1.jar 包的支持官方网站  :  http://commons.apache.org/net/package xxx;import java.io.IOException;import java.io.InputStream;import org.apache.commons.net.ftp.FTPClient;import org.apache.commons.net.ftp.FTPReply;import org.apache.log4j.Logger;public class FtpUploadUtil {    private static final Logger logger = Logger.getLogger(FtpUploadUtil.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;    }}

转载于:https://my.oschina.net/lvzjane/blog/92750

你可能感兴趣的文章
oracle ORA-01840:输入值对于日期格式不够长
查看>>
python基础知识~logger模块
查看>>
SIP入门(二):建立SIPserver
查看>>
Servlet3.0的异步
查看>>
WebService连接postgresql( 失败尝试)
查看>>
从头认识java-13.11 对照数组与泛型容器,观察类型擦除给泛型容器带来什么问题?...
查看>>
Python-MacOSX下SIP引起的pip权限问题解决方案(非取消SIP机制)
查看>>
从MFQ方法到需求分析
查看>>
android.view.WindowManager$BadTokenException: Unable to add window
查看>>
HDU5012:Dice(bfs模板)
查看>>
iphone openssh
查看>>
Linux下MEncoder的编译
查看>>
Xamarin使用ListView开启分组视图Cell数据展示bug处理
查看>>
Javascript中闭包(Closure)的探索(一)-基本概念
查看>>
spark高级排序彻底解秘
查看>>
ylbtech-LanguageSamples-PartialTypes(部分类型)
查看>>
福建省促进大数据发展:变分散式管理为统筹集中式管理
查看>>
开发环境、生产环境、测试环境的基本理解和区别
查看>>
tomcat多应用之间如何共享jar
查看>>
Flex前后台交互,service层调用后台服务的简单封装
查看>>