`

ftp_文件上传Util

    博客分类:
  • Java
 
阅读更多

import java.io.*;

import java.net.URLEncoder;

import javax.servlet.http.HttpServletResponse;

import org.apache.commons.io.IOUtils;

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

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

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

 

public class FtpLoadUtils {

/**

* ftp文件下载

* @param remotePath 文件路径

* @param fileName 文件索引名

* @param fileName2 文件真名

* @param response 

* @return

*/

public static boolean ftpDownFile(String remotePath, String fileName,

String fileName2,HttpServletResponse response) {

boolean success = false;

FTPClient ftp = new FTPClient();

try {

int reply;

// ftp.connect("127.0.0.1");

ftp.connect("196.128.1.184");

// 下面三行代码必须要,而且不能改变编码格式

ftp.setControlEncoding("GBK");

FTPClientConfig conf = new FTPClientConfig(FTPClientConfig.SYST_NT);

conf.setServerLanguageCode("zh");

// 如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器

ftp.login("aa", "123");// 登录

 

reply = ftp.getReplyCode();

if (!FTPReply.isPositiveCompletion(reply)) {

ftp.disconnect();

return success;

}

ftp.changeWorkingDirectory(remotePath);// 转移到FTP服务器目录

response.setContentType("APPLICATION/X-msdownload;charset=UTF-8");

response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode(fileName2, "utf-8"));

// 将文件保存到输出流outputStream中

OutputStream outputStream=response.getOutputStream();

//System.out.println(new String(fileName.getBytes("GBK"), "ISO-8859-1"));

ftp.retrieveFile(new String(fileName.getBytes("GBK"), "ISO-8859-1"), outputStream);

outputStream.flush();

outputStream.close();

 

ftp.logout();

success = true;

} catch (IOException e) {

e.printStackTrace();

} finally {

if (ftp.isConnected()) {

try {

ftp.disconnect();

} catch (IOException ioe) {

}

}

}

return success;

}

 

/**

* ftp文件上传

* @param srcFile 文件流

* @param imgmc 文件索引名

* @param path 文件存储路径

* @return

*/

public static boolean upload(File srcFile, String imgmc,String path) {

boolean result=false;

FTPClient ftpUploadClient = new FTPClient();

FileInputStream fis = null;

try {

ftpUploadClient.connect("196.128.1.x");

ftpUploadClient.login("aa", "123");// 正式name

ftpUploadClient.makeDirectory(path);

fis = new FileInputStream(srcFile);

ftpUploadClient.setBufferSize(1024);

ftpUploadClient.setFileType(FTPClient.BINARY_FILE_TYPE);

ftpUploadClient.storeFile(path+ imgmc, fis);

fis.close();

ftpUploadClient.logout();

result=true;

} catch (IOException e) {

e.printStackTrace();

} finally {

IOUtils.closeQuietly(fis);

if(ftpUploadClient.isConnected()){

try {

ftpUploadClient.disconnect();

} catch (IOException e) {

e.printStackTrace();

}

}

}

return result;

}

}

分享到:
评论

相关推荐

    FTP文件上传下载Util类

    FTP文件上传下载Util类

    GO语言实现的FTP文件自动上传源码

    说明:本程序主要是实现ftp上传功能, 启动前读取配置文件ftp_upload.ini. */ func main() { // 读取配置文件 iniConfig := new(util.Config) iniConfig.InitConfig("./ftp_upload.ini") host := iniConfig.Read...

    javaFtp.rar_FTP界面_FtpStatus.properties_JAVAFTP_java f_java ftp

    这些类可能包括了FTP客户端和服务器端的逻辑,如FTP连接、文件上传和下载的实现,以及用户认证和管理的相关代码。 "client"目录可能包含了FTP客户端的相关代码,这些代码负责与FTP服务器建立连接,发送上传或下载...

    java实现的ftp文件上传

    Java作为多平台支持的编程语言,提供了丰富的库和API来实现FTP文件上传功能。本篇文章将详细探讨如何使用Java实现FTP文件上传,以及相关类的作用。 首先,我们来看标题和描述中的关键词"java实现的ftp文件上传",这...

    FTP上传文件压缩文件生成CSV文件

    在Java中,我们可以使用`java.net.Socket`进行低级的FTP连接,但通常我们会选择使用第三方库如Apache Commons Net或JSch等,它们提供了更高级别的API,简化了FTP文件上传、下载和管理任务。FTPUtils可能包含的方法有...

    java大文件上传至ftp服务器带进度条显示的

    在Java中,我们可以使用`java.net`或`org.apache.commons.net`库来实现FTP文件上传。Apache Commons Net库提供了丰富的FTP功能,包括文件上传、下载、目录管理等,同时它也支持断点续传,对于大文件上传非常实用。 ...

    FTP上传文件帮助类

    - UploadHelper.cs:这个类很可能提供了文件上传的接口,可能包含初始化FTP连接、设置FTP参数、执行上传、处理错误等功能。 - FtpWeb.cs:可能是基于FtpWebRequest的封装,提供更高级别的FTP操作,如上传、下载、...

    java ftp上传 下载 文件压缩解压

    在Java编程中,FTP...总结来说,Java中FTP文件上传和下载主要依赖于Apache Commons Net库,而文件的压缩和解压则利用了Java内置的`java.util.zip`包。这些技术在开发需要处理文件传输和数据存储的应用时非常实用。

    FTP客户端Java类库 ftp4j

    4. **文件上传与下载**:`upload()`和`download()`方法分别用于文件上传和下载,支持单个文件和批量文件操作。`resumeUpload()`和`resumeDownload()`可实现断点续传。 5. **文件重命名和删除**:`rename()`方法用于...

    完整实现ftp上传与下载并解析csv文件

    通过以上步骤,我们可以构建一个完整的FTP文件传输系统,它不仅能上传和下载文件,还能解析CSV内容,对数据进行分析,并在出现问题时提供反馈和记录。这样的系统在数据处理、报告生成、自动化工作流等场景中非常有用...

    ftp工具类(util)

    ftp文件服务器的调用、上传下载方法,If you need you can download

    java定时从ftp服务器更新相关文件

    `needToUpdate()`方法应根据实际需求实现,通常会比较本地文件和FTP文件的最后修改时间。最后,确保正确关闭和断开FTP连接。 这个例子只是一个基本的起点,实际应用中可能需要处理更复杂的逻辑,如错误处理、断点续...

    ftp client util 源码

    4. **文件上传**:将本地文件发送到服务器,可能涉及二进制或文本模式的选择,以及文件重命名。 5. **文件下载**:从服务器下载文件到本地,同样可以指定模式和目标路径。 6. **文件删除**:删除服务器上的文件。 ...

    FTP上传下载实例源码

    这个"FTP上传下载实例源码"是使用微软的FTP服务器技术,结合Visual Studio 2008开发环境,实现了一个能够执行文件上传和下载功能的工程代码。 在VS2008中,你可以使用C#或VB.NET作为编程语言来实现FTP客户端的功能...

    FTP文件上传下载及日志配置和使用源码

    本源码示例着重讲解如何实现FTP文件上传下载的功能,并结合日志配置和使用,以便在程序运行过程中记录操作详情,便于问题排查和系统监控。 1. FTP文件上传下载: - FTP连接:首先需要建立一个FTP连接,这通常涉及...

    FTP文件上传下载CSV文件生成ZIP压缩

    FTPUtils.java文件很可能是用来封装FTP文件操作的工具类,包括连接FTP服务器、登录、上传、下载和断开连接等方法。在编写这样的工具类时,需要注意处理异常,确保文件传输的正确性和完整性。 CSV文件是一种常见的...

    ftp.rar_ftp javadoc

    FTP(File Transfer Protocol)是一种广泛使用的网络协议,用于在互联网上进行文件的上传和下载。在Java编程中,我们可以利用Java的API来实现FTP客户端的功能,进行文件的传输操作。"ftp.rar_ftp javadoc" 提供的是...

    Java编写的linux下定时通过ftp上传文件

    首先,我们需要了解Java中用于FTP操作的库,如`commons-net`,它提供了`FTPClient`类,便于我们进行FTP文件传输。在Linux系统中,我们可以使用Java的`java.util.Timer`和`java.util.TimerTask`来设定定时任务。下面...

    读取jdbc上FTP放置文件

    以上所述就是“读取jdbc上FTP放置文件”这一主题涉及的主要技术点,包括了数据库操作、文件生成、文件打包和FTP文件传输。在实际开发中,我们还需要考虑错误处理、安全性(如使用SSL/TLS加密FTP连接)、资源管理...

    java上传文件到ftp

    通过以上步骤,我们可以构建一个完整的Java FTP文件上传系统,该系统能够定时扫描本地文件,将其上传到多个FTP服务器,并实现备份功能。在实际开发中,还需要根据具体需求调整和完善代码,例如添加配置管理、错误重...

Global site tag (gtag.js) - Google Analytics