FTP文件上传下载
Posted tianwyam
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FTP文件上传下载相关的知识,希望对你有一定的参考价值。
使用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文件上传下载的主要内容,如果未能解决你的问题,请参考以下文章