FTP上传csv文件

package com.util;

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStream;

import java.util.Properties;

import org.apache.commons.net.ftp.FTPClient;


public class FTPUtil {

private static FTPClientftpClient;

private static Propertiesp =new Properties();


/**

    * 获取ftp连接

    */

    private static void connectFtp() {

InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("ftp.properties");

try {

p.load(inputStream);

ftpClient =new FTPClient();

ftpClient.connect(p.getProperty("ftp.address"),21);

ftpClient.login(p.getProperty("ftp.username"),p.getProperty("ftp.password"));

//设置上传目录

ftpClient.changeWorkingDirectory("/");

ftpClient.makeDirectory(p.getProperty("ftp.path"));

ftpClient.changeWorkingDirectory(p.getProperty("ftp.path"));

ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);

ftpClient.setBufferSize(1024);

ftpClient.setControlEncoding("GBK");

}catch (IOException e) {

e.printStackTrace();

}

}


/**

    * ftp上传文件

    *

    * @param file 上传文件

    */

    private static void upload(File file) {

try {

if (file !=null && file.isDirectory()) {

//ftpClient.makeDirectory(file.getName());

//ftpClient.changeWorkingDirectory(file.getName());

                String[] files = file.list();

if (files !=null) {

for (String fileName : files) {

File f =new File(file.getPath() +"/" + fileName);

if (f.isDirectory()) {

upload(f);

ftpClient.changeToParentDirectory();

}else if (f.getName().endsWith(".csv")) {

FileInputStream input =new FileInputStream(f);

ftpClient.storeFile(f.getName(), input);

input.close();

}

}

}

}else if (file !=null && file.getName().endsWith(".csv")) {

FileInputStream input =new FileInputStream(file);

ftpClient.storeFile(file.getName(), input);

input.close();

}

}catch (IOException e) {

e.printStackTrace();

}

}


/**

    * 关闭ftp连接

    */

    private static void closeFtp() {

if (ftpClient !=null &&ftpClient.isConnected()) {

try {

ftpClient.logout();

ftpClient.disconnect();

}catch (IOException e) {

e.printStackTrace();

}

}

}


/**

    * ftp上传文件

    *

    * @param file 上传路径

    */

    public static void uploadFile(File file) {

connectFtp();

upload(file);

closeFtp();

}

}

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

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,805评论 19 139
  • 一、流的概念和作用。 流是一种有顺序的,有起点和终点的字节集合,是对数据传输的总成或抽象。即数据在两设备之间的传输...
    布鲁斯不吐丝阅读 13,424评论 2 95
  • 25岁的时候,他已是巅峰 璀璨的流星在最高点炸裂 光芒洒向整个宇宙 而我,出生即最高点 25年前的惊世一哭 是我最...
    Dali王阅读 1,297评论 0 2
  • 细数一下来坡已经工作1年4个月了,一直以来工作好似完全FREE的状态,作为学校唯一的华文老师,好像教授的东西...
    手艺人海伦阅读 1,454评论 0 0

友情链接更多精彩内容