`

使用JAVA API从FTP服务器下载文件

 
阅读更多

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import sun.net.TelnetInputStream;
import sun.net.ftp.FtpClient;

public class FtpDownload extends HttpServlet {
 @Override
 protected void doGet(HttpServletRequest req, HttpServletResponse resp)
   throws ServletException, IOException {
   doPost(req, resp);
 }

 @Override
 protected void doPost(HttpServletRequest req, HttpServletResponse resp)
   throws ServletException, IOException {
  String ftpServer = "ftp server ip address";
  String username = "username";
  String password = "password";
  String filename = "filename";
  String path = "/path";
  FtpClient ftpClient = new FtpClient();
  ftpClient.openServer(ftpServer);
  ftpClient.login(username, password);
  if (path.length() != 0)
   ftpClient.cd(path);
  ftpClient.binary();
  TelnetInputStream is = ftpClient.get(filename);

  resp.setContentType("application/x-msdownload");
  resp.setHeader("Content-Disposition", (new StringBuilder(
    "attachment;filename=")).append(
    new String(filename.getBytes(), "ISO-8859-1")).toString());

  ServletOutputStream out = resp.getOutputStream();
  byte[] bytes = new byte[1048576];
  int c;
  while ((c = is.read(bytes)) != -1) {
   out.write(bytes, 0, c);
  }
  is.close();
  out.flush();
  out.close();
  ftpClient.closeServer();
 }

}

分享到:
评论

相关推荐

    java API操作FTP上传下载

    用javaAPI操作ftp上传下载文件,用于把本地主机上的文件上传到远程ftp服务器、下载远程ftp服务器上的文件到本地主机、删除远程文件、重命名远程文件、 新建远程目录以及删除远程目录。

    java ftp 服务器

    一个简单的demo,适合初学者,java语言使用第三方API,进程FTP上传下载的demo

    java ftp服务器copy命令实现

    java程序调用API 实现在ftp内文件夹和文件的拷贝,ftp服务器之间的文件和文件夹的拷贝 欢迎来群:41229007 QQ:119346711讨论

    springboot-ftpclient:@Service示例,用于使用Spring Boot从FTP服务器连接,上传和下载文件

    @Service示例,用于使用Spring Boot从FTP服务器连接,上传和下载文件。 该项目实现了@Service Spring Boot,该服务启用并提供了一个简单的API,以便其他开发人员可以重用它来连接到实现FTP协议的服务器。 它提供了...

    简单FTP客户端软件

    这是一个FTP客户端的简单实现,使用语言为java,FTP服务器为FileZilla Server。该客户端软件使用的是org.apache.commons.net.ftp.FTPClient这个类,FTPClient这个类,该类具体的可查看官网的api文档,链接:...

    ftp4j-1.3.1下载

    可以将ftp4j嵌到你的Java应用中,来传输文件(包括上传和下载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括:通过 TCP/IP直接连接,通过...

    功能丰富的FTP库使用Java 1.7 方法和java.nio.rar

    支持所有标准和许多可选的FTP操作,支持非常多的FTP服务器。 支持被动和主动模式。 支持二进制断点续传。 易用性 简单而广泛的API,类似命令行的FTP程序。 包括了完整的源代码。 集成log4j。 一般特性 与Java 1.7及...

    JAVA上百实例源码以及开源项目

    2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户...

    Http/FTP多线程断点续传下载组件

    点量Http、FTP下载内核源码使用高效的c++代码编写,提供标准的动态链接库(DLL),可供C/C++、Delphi、C#、Java、VB等语言和各常用开发环境调用,让您完全像调用系统API一样的调用。 点量Http/FTP组件的功能简介...

    FlopBox:Ftp Client REST Api,允许保存您的首选FTP服务器列表,创建连接,从远程ftp服务器添加文件和从中删除文件

    Ftp客户端REST Api,允许保存您的首选FTP服务器列表,创建连接,从远程ftp服务器添加文件和从中删除文件。 终点: ENR:新注册FTP dans le FlopBox 输入要求的类型:POST url de larequête:/服务器 内容类型:...

    java开源包10

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    JAVA上百实例源码以及开源项目源代码

    2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户...

    java开源包8

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包11

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包6

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包9

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包4

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包101

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包5

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包1

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

Global site tag (gtag.js) - Google Analytics