`

jdk7 自带ftp 下载功能

    博客分类:
  • java
 
阅读更多

jdk7 ftp下载功能:

 

 

public class Test
{
 /**
  *
  * 本地文件名
  */
 private String localfilename;
 /**
  *
  * 远程文件名
  */
 private String remotefilename;
 /**
  *
  * FTP客户端
  */
 private FtpClient ftpClient;

 /**
  * 服务器连接
  *
  * @param ip
  *            服务器IP
  * @param port
  *            服务器端口
  * @param user
  *            用户名
  * @param password
  *            密码
  * @param path
  *            服务器路径
  * @throws FtpProtocolException
  *
  */
 public void connectServer(String ip, int port, String user, String password, String path) throws FtpProtocolException
 {
  try
  {
   /* ******连接服务器的两种方法****** */
   // 第一种方法
   
     ftpClient =FtpClient.create();
     ftpClient.connect(new InetSocketAddress(ip, port));
   
   // 第二种方法
   //ftpClient = FtpClient.create(ip);
   //ftpClient.login(user, null, password);
   ftpClient.login(user,password.toCharArray());
   // 设置成2进制传输
   ftpClient.setBinaryType();
   System.out.println("login success!");

   if (path.length() != 0)
   {
    // 把远程系统上的目录切换到参数path所指定的目录
    ftpClient.changeDirectory(path);
   }
   ftpClient.setBinaryType();
  } catch (IOException ex)
  {
   ex.printStackTrace();
   throw new RuntimeException(ex);
  }

 }

 /**
  * 关闭连接
  *
  */

 public void closeConnect()
 {
  try
  {
   ftpClient.close();
   System.out.println("disconnect success");
  } catch (IOException ex)
  {
   System.out.println("not disconnect");
   ex.printStackTrace();
   throw new RuntimeException(ex);
  }
 }

 

/**
  *
  * 下载文件
  *
  * @param remoteFile
  *            远程文件路径(服务器端)
  * @param localFile
  *            本地文件路径(客户端)
  * @throws FtpProtocolException
  *
  */
 public void download(String remoteFile, String localFile) throws FtpProtocolException
 {
  TelnetInputStream is = null;
  FileOutputStream os = null;
  try
  {

   // 获取远程机器上的文件filename,借助TelnetInputStream把该文件传送到本地。
   is = (TelnetInputStream) ftpClient.getFileStream(remoteFile);
   File file_in = new File(localFile);
   os = new FileOutputStream(file_in);

   byte[] bytes = new byte[1024];
   int c;
   while ((c = is.read(bytes)) != -1)
   {
    os.write(bytes, 0, c);
   }
   System.out.println("download success");
  } catch (IOException ex)
  {
   System.out.println("not download");
   ex.printStackTrace();
   throw new RuntimeException(ex);
  } finally
  {
   try
   {
    if (is != null)
    {
     is.close();
    }
   } catch (IOException e)
   {
    e.printStackTrace();
   } finally
   {
    try
    {
     if (os != null)
     {
      os.close();
     }
    } catch (IOException e)
    {
     e.printStackTrace();
    }
   }
  }
 }

 

}

分享到:
评论

相关推荐

    jdk1.7以上专用FTP工具类

    jdk1.7以上专用FTP工具类,本人花了半天时间调试通过,拿来即用,具体用法详见main函数。

    远程连接工具,支持SFTP,FTP 需要自带jdk环境

    远程连接工具,支持SFTP,FTP 需要自带jdk环境 该平台类似于网页版的Xshell,基于cookie和json的方式存储登录信息无数据库更方便兼容每个用户的使用,支持SFTP和FTP两种登录方式,打破原有黑端显示命令行和文件名的...

    ftp上传下载文件及文件夹

    在Java中,我们可以利用内置的API或者第三方库如Apache Commons Net来实现FTP的文件上传和下载功能。下面我们将详细讲解如何使用这两种方法实现FTP操作。 ### JDK API 实现 FTP 下载文件 JDK 自带的 `java.net` ...

    ftp点击运行程序服务

    FTP服务允许用户从远程服务器上下载文件或上传文件到服务器,是互联网上常见的数据交换方式之一。在本文中,我们将深入探讨如何设置和运行一个FTP服务,特别是通过提供的“ftp点击运行程序服务”。 首先,我们需要...

    Jmeter压测工具(中文版)+java1.8.0_Jdk

    Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计... 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等

    linux阿里云服务器系统配置jdk,tomcat,教程

    - 下载JDK:可以从Oracle官网下载JDK 1.8版本。 - 上传命令示例: - 连接服务器:`psftp root@your_server_ip` - 上传文件:`mput d:\xjpp.zip` #### 七、配置JDK环境 6. **配置JDK**: - 创建目录:`sudo ...

    Eclipse FTP 插件 Sexftp

    下载以及FTP服务器目录浏览由于使用频率较低,这版就暂时没考虑,下一版本实现。 下一版本计划: 1、服务器目录浏览。 2、服务器文件在线修改,改为后自动传回服务器。减少操作过程。 3、根据本地目录自动定位到...

    安装Linux JDK

    在给出的部分内容中,提到了安装JDK版本7(jdk-7u75-linux-x64.tar.gz),这是Oracle公司提供的官方JDK版本。开发者需要登录到Oracle官方网站,根据自己的Linux系统版本(如CentOS 6.4)选择对应的JDK版本进行下载。...

    java实现FTP文件上传与文件下载

    2. JDK 自带的 FTP 客户端 API:Java 标准库(JDK)中的 `sun.net.ftp` 包提供了一个简单的 FTP 客户端实现。在示例代码中,`FtpClient` 类用于连接、登录FTP服务器,设置传输模式(如二进制模式),切换目录,以及...

    phpStudy工具集成JDK+tomcat+Apache+mysql.rar

    自带FTP服务器,支持多用户,无需再安装FTP服务器。自带网站挂马监视器,随时记录文件的修改情况,让挂马文件无处可逃。 6、本程序完美支持II7,IIS8和IIS6。应网友的要求制作Nginx版和Lighttpd版。Nginx版为phpfind...

    java applet实现的一个FTP上传组件

    java applet实现的一个FTP上传组件 老外写的,不怎么支持中文,第一次打开没装jdk会提示安装jdk,里面已自带是1.4版本 安装完后即可使用

    jdk nmon jmeter nmon分析

    例如,调整JVM的堆大小、设置垃圾收集器类型、理解和使用JDK自带的JConsole或VisualVM等工具进行性能监控,都是Java开发和运维人员必备的知识。 Nmon则是系统管理员用来监控服务器性能的利器。它能够实时显示系统的...

    Linux系统-Linux中安装JDK/TOMCAT/MYSQL/linux中项目部署/集群搭建

    使用FileZilla等FTP工具将JDK的tar.gz文件传输到Linux服务器的`/usr/local/java`目录。 #### 1.4 解压JDK 安装必要的依赖,如glibc.i686,然后使用`tar`命令解压JDK文件。 ```bash yum install glibc.i686 tar -...

    ApacheFtpServer之ssl配置

    因此,FTPS不仅可以实现基本的文件传输功能,还能确保这些文件在传输过程中是安全加密的。 #### 二、配置FTPS的步骤 ##### 1. 创建服务器证书 为了使Apache FtpServer支持FTPS,首先需要创建一个服务器证书。这一...

    redhat.AS5.0下安装oracle

    在 Red Hat Enterprise 5 中已经自带了 JDK 1.4,因此需要卸载 JDK 1.4,并安装 JDK 1.6。 卸载 JDK 1.4 的步骤如下: 1. 打开终端输入 #rpm -qa | grep gcj,查找安装的 JDK 1.4 相关文件。 2. 卸载 JDK 1.4,...

    Jmeter需要用的json.jar包

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间的数据传输...通过结合 Beanshell 和 JSON 解析库,我们可以实现更强大的测试逻辑,确保Web服务或API的功能和性能达到预期。

    精通JAVA-JDK、数据库系统开发WEB开发

    - **分布式**:Java自带的网络处理库,支持HTTP、FTP等协议,使程序能像访问本地文件一样轻松访问网络资源。 - **高性能**:借助JIT编译,Java能够优化频繁执行的代码段,达到接近原生代码的性能水平。 - **健壮性**...

    第三方软件安裝指导

    删除系统自带的JDK文件** - 执行以下命令来移除可能存在的JDK文件: ```bash rm -fr /etc/java rm -fr /etc/alternatives/java rm -fr /etc/alternatives/jre* rm -fr /etc/alternatives/jaxp* rm -fr /etc/...

    采用Netty4.x网络编程实现高性能高并发的RPC开源框架, 基于Java语言来开发(JDK1.8).zip

    在Java领域,Netty因其高效、稳定和丰富的功能集而被广泛使用,尤其是在开发网络通信相关的系统,如RPC(Remote Procedure Call)框架时。 RPC框架的核心目标是使得分布式系统中的调用就像调用本地方法一样简单。它...

Global site tag (gtag.js) - Google Analytics