使用Apache Commons Net来实现FTP服务器文件的上传 与 下载

maven配置Jar

<!-- https://mvnrepository.com/artifact/commons-net/commons-net -->
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>3.3</version>
</dependency>

FTP上传

    /**
* @Package com.tianya.demo.ftp
* @Function FtpUtils.java
* @Description
* 上传文件到FTP服务器
* @author TianwYam
* @date 2019年6月25日 下午7:11:28
* @param hostName FTP的IP地址
* @param port FTP的端口
* @param userName 登陆FTP服务器的用户名
* @param password 登陆FTP服务器的密码
* @param pathName 上传到FTP的目录
* @param remoteFileName 上传到FTP的文件名称
* @param localFile 将要上传的本地文件(包括文件目录+文件名)
* @return 成功true/失败false
*
*/
public static boolean put(String hostName, int port,
String userName, String password,
String pathName, String remoteFileName,
String localFile) { FTPClient ftpClient = new FTPClient();
try {
// 连接FTP服务器
ftpClient.connect(hostName, port);
// 登陆
ftpClient.login(userName, password);
// 切换目录
ftpClient.changeWorkingDirectory(pathName);
// 上传
return ftpClient.storeFile(remoteFileName, new FileInputStream(localFile));
} catch (IOException e) {
e.printStackTrace();
} return false;
}

FTP下载

    /**
* @description 从远程FTP服务器下载文件到本地
* @author TianwYam
* @param hostName FTP的IP地址
* @param port FTP的端口
* @param userName 登陆FTP的用户名
* @param password 登陆FTP的用户密码
* @param pathName 远程文件的路径目录
* @param remoteFileName 远程文件的文件名称
* @param localFile 将要下载到本地的文件(包括目录+文件名)
* @return 成功true/失败false
*/
public static boolean get(String hostName, int port,
String userName, String password,
String pathName, String remoteFileName,
String localFile) { FTPClient ftpClient = new FTPClient();
try {
// 连接FTP服务器
ftpClient.connect(hostName, port);
// 登陆
ftpClient.login(userName, password);
// 切换目录
ftpClient.changeWorkingDirectory(pathName);
// 下载
return ftpClient.retrieveFile(remoteFileName, new FileOutputStream(localFile));
} catch (IOException e) {
e.printStackTrace();
} return false;
}

FTP文件上传下载的更多相关文章

  1. Python 基于Python实现Ftp文件上传,下载

    基于Python实现Ftp文件上传,下载   by:授客 QQ:1033553122 测试环境: Ftp客户端:Windows平台 Ftp服务器:Linux平台 Python版本:Python 2.7 ...

  2. 【FTP】FTP文件上传下载-支持断点续传

    Jar包:apache的commons-net包: 支持断点续传 支持进度监控(有时出不来,搞不清原因) 相关知识点 编码格式: UTF-8等; 文件类型: 包括[BINARY_FILE_TYPE(常 ...

  3. java/struts/Servlet文件下载与ftp文件上传下载

    1.前端代码 使用超链接到Struts的Action或Servlet <a target="_blank" href="ftpFileAction!download ...

  4. python 实现远端ftp文件上传下载

    python 实现ftp上传下载 * 脚本需要传入两个参数,参数1为需要从远端ftp站点下载文件名称,参数2为已知需要下载的文件md5值,文件下载完成后会自动进行md5值校验 * 运行示例 [root ...

  5. java实现ftp文件上传下载,解决慢,中文乱码,多个文件下载等问题

    //文件上传 public static boolean uploadToFTP(String url,int port,String username,String password,String ...

  6. 4.1 - FTP文件上传下载

    题目:开发一个支持多用户同时在线的FTP程序要求:1.用户加密认证2.允许同时多用户登录3.每个用户有自己的家目录,且只能访问自己的家目录4.对用户进行磁盘配额,每个用户的可用空间不同5.允许用户在f ...

  7. ftp文件上传下载命令

    介绍:从本地以用户wasqry登录的机器1*.1**.21.67上通过ftp远程登录到ftp服务器上,登录用户名是lte****,以下为使用该连接做的实验.  查看远程ftp服务器上用户lte**** ...

  8. ftp文件上传下载实用命令

    连接 >ftp yourhost >user yourusername >password your password 顺利的话连接成功 >dir ;获取remote目录列表 ...

  9. Java 利用Apache Commons Net 实现 FTP文件上传下载

    package woxingwosu; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import ...

  10. 3.2 - FTP文件上传下载

    题目:开发一个支持多用户同时在线的FTP程序要求:1.用户加密认证2.允许同时多用户登录3.每个用户有自己的家目录,且只能访问自己的家目录4.对用户进行磁盘配额,每个用户的可用空间不同5.允许用户在f ...

随机推荐

  1. qt install (1)

    直接在命令行安装 sudo apt-get install qt5-default qtcreator 命令行安装的卸载 sudo apt-get remove qt5-default qtcreat ...

  2. Codevs 3012 线段覆盖 4

    3012 线段覆盖 4 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 黄金 Gold 题目描述 Description 数轴上有n条线段,线段的两端都是整数坐标,坐标范围在0~100 ...

  3. python 绘制五角星

    code import turtle n = eval(input("请输入五角星的长度")) turtle.begin_fill() #开始填充颜色 i = : turtle.f ...

  4. BZOJ 2402 陶陶的难题II (树链剖分、线段树、凸包、分数规划)

    毒瘤,毒瘤,毒瘤-- \(30000\)这个数据范围,看上去就是要搞事的啊... 题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=2402 ...

  5. redis redis-cli

    默认无权限控制: 远程服务连接: $ redis-cli -h 127.0.0.1 -p 6379 windows下 :redis-cli.exe -h 127.0.0.1 -p 6379 redis ...

  6. mysql的count和sum使用条件表达式

    count函数条件不为null的时候显示结果.即使为false也也会显示结果. 可以是使用if条件或者case when语句.如果条件不为null即需要的结果. 使用count()函数实现条件统计的基 ...

  7. spring boot 下 开启 gzip

    [参考文章]:Spring boot开启Gzip压缩 [参考文章]:Accept-Encoding Spring 版本 :5.1.2-RELEASE 1. application.yml 配置 ser ...

  8. 20182303 2019-2020-1 《数据结构与面向对象程序设计》第2&3周学习总结

    目录 教材学习内容总结 教材学习中的问题和解决过程 代码调试中的问题和解决过程 代码托管 上周考试错题总结 结对及互评 点评 学习进度条 教材学习内容总结 教材第二章内容 学习Java基本数据类型以及 ...

  9. mongodb 的云数据库产品 mlab 的使用

    mongodb的云数据库产品mlab,新用户注册,提供500m免费的空间,对于创建测试的网站数据库来说,足够使用.虽然是服务器是在美国,但是链接稳定.下面就介绍注册和使用的流程. 浏览器中,输入网址h ...

  10. Undo Segment/Undo Retention

    undo_retention简单定义,就是最多数据的最少保留时间.AUM模式下,undo_retention参数用于事务commit后undo数据保留的时间.单位为秒.这是个no guarantee的 ...