FTPUtil工具类及使用
来源:互联网 发布:爱米网域名靠谱 编辑:程序博客网 时间:2024/05/21 17:58
配置maven
工具类
package com.hk.utils;import org.apache.commons.net.ftp.FTP;import org.apache.commons.net.ftp.FTPClient;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;/** * User: hk * Date: 2017/8/10 下午4:31 * version: 1.0 */public class FTPUtil implements AutoCloseable { private FTPClient ftpClient; public FTPUtil(String serverIP, int port, String userName, String password) throws IOException { ftpClient = new FTPClient(); ftpClient.connect(serverIP, port); ftpClient.login(userName, password); ftpClient.setBufferSize(1024);//设置上传缓存大小 ftpClient.setControlEncoding("UTF-8");//设置编码 ftpClient.setFileType(FTP.BINARY_FILE_TYPE);//设置文件类型 } /** * 下载ftp文件到本地 * * @param remoteFileName 远程文件名称 * @param localFile 本地文件[包含路径] * @return true/false * @throws IOException 异常 */ public boolean downloadFile(String remoteFileName, String localFile) throws IOException { boolean isSucc; File outFileName = new File(localFile); if (ftpClient == null) throw new IOException("ftp server not login"); try (OutputStream outputStream = new FileOutputStream(outFileName)) { isSucc = ftpClient.retrieveFile(remoteFileName, outputStream); } return isSucc; } /** * 上传文件制定目录 * * @param remoteFileName 远程文件名 * @param localFile 本地文件[必须带路径] * @return true/false * @throws IOException 异常 */ public boolean uploadFile(String remoteFileName, String localFile) throws IOException { boolean isSucc; try (InputStream inputStream = new FileInputStream(localFile)) { if (ftpClient == null) throw new IOException("ftp server not login"); isSucc = ftpClient.storeFile(remoteFileName, inputStream); } return isSucc; } /** * 切换目录 * * @param path 创建目录 * @return 创建标志 * @throws IOException 异常 */ public boolean changeDirectory(String path) throws IOException { return ftpClient.changeWorkingDirectory(path); } /** * 创建目录 * * @param path 创建目录 * @return 创建标志 * @throws IOException 异常 */ public boolean createDirectory(String path) throws IOException { return ftpClient.makeDirectory(path); } /** * 自动关闭资源 */ @Override public void close() throws Exception { if (ftpClient != null && ftpClient.isConnected()) { ftpClient.logout(); ftpClient.disconnect(); } }}
使用方式
@Test public void downloadFile() throws Exception { try (FTPUtil ftpUtil = new FTPUtil("10.211.55.7",21,"ftpuser","123qwe")){ ftpUtil.downloadFile("2.txt","/Users/hk/Desktop/22.txt"); }catch (Exception e){ e.printStackTrace(); } } @Test public void uploadFile() throws Exception { try (FTPUtil ftpUtil = new FTPUtil("10.211.55.6",21,"ftpuser","123qwe")){ ftpUtil.uploadFile("2.txt","/Users/hk/Desktop/副本.txt"); }catch (Exception e){ e.printStackTrace(); } }
阅读全文
0 0
- FTPUtil工具类及使用
- FtpUtil 工具类使用
- FtpUtil工具类
- Java-FtpUtil工具类
- FtpUtil工具类
- FTP工具FtpUtil(1)
- FTP工具FtpUtil(2)
- FTP工具FtpUtil(3)
- FtpUtil
- FTPutil
- FtpUtil
- FTPUtil
- FtpUtil
- FtpUtil
- java中常用的工具类(二)FtpUtil, 汉字转拼音,zip工具类,CollectionUtil,MathUtil,
- java中常用的工具类(二)FtpUtil, 汉字转拼音,zip工具类,CollectionUtil,MathUtil,
- Banner 工具类及使用
- SFTPUtils工具类及使用
- PHP模拟发送POST请求之三、用Telnet和fsockopen()模拟发送POST信息
- 【170812】界面漂亮 功能实用的串口调试助手源码
- sd卡读写文件
- HTTP项目1.0 -- HTTP协议基础知识
- VS2017 怎样将桌面应用程序打包成.msi或.exe嘞?
- FTPUtil工具类及使用
- 小程序get方式发送接收参数,与服务器通信-小程序支付开发4
- [题解]bzoj2038 小Z的袜子
- 8-11
- 异常处理(14)
- JZOJ 5258. 友好数对 (Standard IO)
- HDOJ 入门级深搜DFS 题目汇总,持续更新中,一路打怪升级
- Activity的生命周期和启动模式(一)
- 上传图片(15)