`
jackroomage
  • 浏览: 1222808 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

java ftp 上传下载,代码。

 
阅读更多


import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;

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

public class download {
String localfilename;

String remotefilename;

FtpClient ftpClient;

// server:服务器名字
// user:用户名
// password:密码
// path:服务器上的路径
public void connectServer(String ip, int port,String user
                , String password,String path) {

try {
ftpClient = new FtpClient();
ftpClient.openServer(ip,port);
ftpClient.login(user, password);
System.out.println("login success!");
if (path.length() != 0) ftpClient.cd(path);
ftpClient.binary();
} catch (IOException ex) {
System.out.println("not login");
System.out.println(ex);
}
}

public void closeConnect() {
try {
ftpClient.closeServer();
System.out.println("disconnect success");
} catch (IOException ex) {
System.out.println("not disconnect");
System.out.println(ex);
}
}

public void upload() {

//    本地要长传文件名
this.localfilename = "D://test2//test.txt";
// 在ftp服务器上,要生成的文件名字。
this.remotefilename = "test.txt";

try {
TelnetOutputStream os = ftpClient.put(this.remotefilename);
java.io.File file_in = new java.io.File(this.localfilename);
FileInputStream is = new FileInputStream(file_in);
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1) {
os.write(bytes, 0, c);
}
System.out.println("upload success");
is.close();
os.close();
} catch (IOException ex) {
System.out.println("not upload");
System.out.println(ex);
}
}

public void download() {

try {
TelnetInputStream is = ftpClient.get(this.remotefilename);
java.io.File file_in = new java.io.File(this.localfilename);
FileOutputStream os = new FileOutputStream(file_in);
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1) {
// System.out.println((char)is.read());
// System.out.println(file_in);
os.write(bytes, 0, c);
}

System.out.println("download success");
os.close();
is.close();
} catch (IOException ex) {
System.out.println("not download");
System.out.println(ex);
}
}

public void download(String remotePath,String remoteFile,String localFile) {

try {
if (remotePath.length() != 0) ftpClient.cd(remotePath);
TelnetInputStream is = ftpClient.get(remoteFile);
java.io.File file_in = new java.io.File(localFile);
FileOutputStream os = new FileOutputStream(file_in);
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1) {
// System.out.println((char)is.read());
// System.out.println(file_in);
os.write(bytes, 0, c);
}

System.out.println("download success");
os.close();
is.close();
} catch (IOException ex) {
System.out.println("not download");
System.out.println(ex);
}
}

public void download(String remoteFile,String localFile) {
//  remoteFile是ftp服务器上的的文件路径文件。
//    localFile 是 从ftp服务器上下载下来的文件,放在本机上的文件(名字随意定义)。
try {
TelnetInputStream is = ftpClient.get(remoteFile);
java.io.File file_in = new java.io.File(localFile);
FileOutputStream os = new FileOutputStream(file_in);
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1) {
// System.out.println((char)is.read());
// System.out.println(file_in);
os.write(bytes, 0, c);
}

System.out.println("download success");
os.close();
is.close();
} catch (IOException ex) {
System.out.println("not download");
System.out.println(ex);
}
}

public static void main(String agrs[]) {

String filepath[] = { "/callcenter/index.jsp", "/callcenter/ip.txt",
"/callcenter/mainframe/image/processing_bar_2.gif",
"/callcenter/mainframe/image/logo_01.jpg" };
String localfilepath[] = { "C:\\FTP_Test\\index.jsp",
"C:\\FTP_Test\\ip.txt", "C:\\FTP_Test\\processing_bar_2.gif",
"C:\\FTP_Test\\logo_01.jpg" };

download fu = new download();
// fu.connectServer("59.151.113.85",22, "root", "cdel4321$#@!","/root/gklwb");

// 必须加上 "/"。
fu.connectServer("127.0.0.1",21, "jack", "123456","/ftp_test");

//  下载用的。
//for(int i=0;i<filepath.length;i++){
//fu.download(filepath[i],localfilepath[i]);
//}

// 上传方法。
// fu.upload();
// 下载方法1
// fu.download();
// 下载方法2。
fu.download("/ftp_test/test.txt","D:\\test2\\test.txt");


fu.closeConnect();

}
}

 

 

//   附件中是:        WinFtp     Server2.0.1特别汉化版

分享到:
评论

相关推荐

    ftp上传下载java代码

    总结,使用Java实现FTP上传下载主要依赖于Apache Commons Net库,通过创建FTPClient对象,连接服务器,设置传输模式,然后执行上传或下载操作。在实际应用中,还需要考虑异常处理、性能优化等问题,以实现更高效、...

    基于Java的FTP客户端源代码

    总之,Java FTP客户端源代码提供了一个平台,让你可以利用Java的强大力量来实现文件的上传、下载和管理。通过学习和实践,你将能够掌握FTP通信的核心概念,并将这些知识应用到你的项目中,提升你的开发技能。

    JAVA FTP下载 程序——源代码

    - 在后台 Java 代码中处理用户提交的数据,并调用前面提到的 FTP 客户端类进行文件的下载。 - 可以使用 Struts 的 `Action` 接口来实现具体的业务逻辑。 ### 4. 常见问题及解决方案 #### 登录失败 - 如果出现登录...

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

    这篇博客“java ftp上传 下载 文件压缩解压”很可能是关于如何使用Java实现FTP文件上传、下载以及文件的压缩与解压功能。下面我们将深入探讨这些知识点。 首先,FTP上传和下载是Java中常见的任务,通常通过`java...

    java ftp 上传 IIS 展示,代码+文档

    Java FTP(File Transfer...总的来说,Java FTP上传IIS的实现涉及到Java网络编程、FTP协议、可能的第三方库使用,以及良好的异常管理和资源管理实践。通过合理的工具类设计,可以创建出高效且易于维护的FTP客户端代码。

    java ftp 上传 下载 断点续传

    在本文中,我们将深入探讨Java FTP上传、下载以及断点续传的核心概念和实现方法。 1. FTP基本原理: FTP是一种基于TCP/IP协议的应用层协议,主要用于在客户端和服务器之间传输文件。它定义了两组命令和响应,一组...

    JAVA实现ftp上传,下载

    在Java中实现FTP上传和下载,我们可以利用Apache Commons Net库,它提供了一系列的FTP客户端API,方便我们进行文件操作。以下是对这个主题的详细讲解: 一、Apache Commons Net库介绍 Apache Commons Net是Apache...

    Java实现FTP批量大文件上传下载

    通过 Java 现有的可用的库来编写 FTP 客户端代码,并开发成 Applet 控件,做成基于 Web 的批量、大文件的上传下载控件。 一、概述 在项目实施过程中出现了一种基于 Web 的文件上传下载需求。在全省(或全国)各地...

    java ftp上传 下载,获取文件集合

    java 连接linux系统上的ftp服务器,通过java代码上传,下载文件 通过链接ftp,获取文件列表,上传。下载、删除文件功能实现

    java ftp上传和下载

    Java FTP上传和下载可以通过Apache Commons Net库的FTPClient实现,结合ScheduledExecutorService可以轻松创建定时任务来定期执行文件传输。这在需要自动化文件管理和备份的场景中非常有用。通过理解FTP的工作原理和...

    java实现ftp上传jar包

    Java FTP上传JAR包是一项常见的任务,特别是在自动化部署或者远程更新系统组件时。在这个过程中,我们需要使用Java编程语言,结合FTP(File Transfer Protocol)协议来实现在服务器上上传JAR文件。以下是一些相关的...

    javaftp上传与下载代码

    凭借着这个工具类,可以方便的上传文件到FTP服务器,也可从FTP下载指定的文件到本地

    Java FTP 指定下载文件和上传文件到指定的服务器目录

    ### Java FTP 指定下载文件和上传文件到指定的服务器目录 #### 一、概述 在本篇文章中,我们将详细介绍如何使用Java编程语言通过FTP(文件传输协议)实现文件的上传与下载功能,并能够将文件指定上传或下载到特定...

    java编写的ftp文件实时监控下载上传

    用java语言编写的ftp小工具,可以按指定时间监控ftp服务器,把服务器指定目录内新产生的文件或者文件夹下载到本地指定文件夹,下载后删除数据。 也可以监控本地文件夹,把文件夹内新产生的文件或者文件夹整体上传到...

    java FTP 上传 下载 (中文 ) 文件

    以下是一个使用Apache Commons Net库进行FTP上传和下载的简单示例: 1. **FTP连接**: - 导入必要的库:`import org.apache.commons.net.ftp.FTP;` 和 `import org.apache.commons.net.ftp.FTPClient;` - 创建`...

    java FTP断续上传与下载

    Java FTP 断续上传与下载是网络编程中的一个重要概念,主要应用于大文件传输,它可以提高文件传输的效率和可靠性。FTP(File Transfer Protocol)是一种用于在网络上进行文件传输的标准协议,而断续上传和下载则是...

    Java 基于Swing的FTP上传下载程序

    Java基于Swing的FTP上传下载程序是一个用户界面友好、功能完备的应用,主要用于通过FTP(File Transfer Protocol)协议实现文件的上传和下载。Swing是Java提供的一个轻量级的GUI库,它允许开发者创建出美观且功能...

    Java实现ftp上传程序源代码

    这个源代码项目提供了一种使用Java实现FTP上传功能的方法,使得开发者能够编写应用程序,将文件或数据有效地发送到FTP服务器。以下是关于这个Java FTP上传程序的一些关键知识点: 1. **Java FTP库**: Java标准库...

    ftp上传示例java代码

    在这个“ftp上传示例java代码”中,我们主要会探讨如何使用Java实现FTP功能,包括文件上传、目录操作以及断点续传。 1. **FTP基本概念** - FTP协议基于TCP,分为ASCII和二进制两种传输模式,分别用于文本文件和二...

Global site tag (gtag.js) - Google Analytics