FTP工具类

package leif.liu.fantasy.util;

import java.io.IOException;
import java.io.InputStream;
import java.net.SocketException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.springframework.web.multipart.MultipartFile;

public class FTPUtil {
    private FTPUtil() {}

    public static void ftpConnect(FTPClient fTPClient, String fTPPath) throws SocketException, IOException {
        fTPClient.connect("127.0.0.1", 21);
        fTPClient.login("Administrator", "lbc19951022");
        boolean hasDirectory = fTPClient.changeWorkingDirectory(fTPPath);

        if (!hasDirectory) {
            fTPClient.makeDirectory(fTPPath);
            fTPClient.changeWorkingDirectory(fTPPath);
        }
    }

    public static void ftpDisconnect(FTPClient fTPClient) throws IOException {
        fTPClient.logout();
        fTPClient.disconnect();
    }

    public static void uploadFile(MultipartFile multipartFile, String fileName, String fTPPath) {
        FTPClient ftpClient = new FTPClient();
        InputStream inputStream = null;

        try {
            ftpConnect(ftpClient, fTPPath);
            ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
            inputStream = multipartFile.getInputStream();
            ftpClient.storeFile(fileName, inputStream);
        } catch (SocketException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                ftpDisconnect(ftpClient);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    public static void deleteFile(String fileName, String fTPPath) {
        FTPClient ftpClient = new FTPClient();

        try {
            ftpConnect(ftpClient, fTPPath);
            ftpClient.deleteFile(fileName);
        } catch (SocketException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                ftpDisconnect(ftpClient);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 如何打造一个高效的特战小分队? 美军的作战模式就两种:一种是集团军,另一种是特种部队。特种部队的作战能力、工作范围...
    甲坤阅读 4,642评论 0 2
  • 原创:飞儿 P2P今年以来出现了非常密集的连环爆雷,包括几个成立三四年的百亿级的大平台,让许多投资人血本无归。 有...
    爱自由的飞儿阅读 3,945评论 0 0
  • 古诗大赛 期待已久的古诗大赛终于开始了。蔡老师也是一脸兴奋,手指轻点鼠标,屏幕上弹出了几个字:第一关古诗快背,同...
    东瓜居士阅读 1,315评论 0 0
  • 不喜欢说话,除了和你 却从未有过和你敞开心扉谈天说地 与你见面 我总是准备了很多很多 但见到你就忘了所有 表现的很...
    杨啸啸阅读 1,459评论 0 0

友情链接更多精彩内容