package mview.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(String localfilename,String remotefilename) {
this.localfilename = localfilename;
this.remotefilename = remotefilename;
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) {
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("111.111.111.111", 22, "test", "123456",
"/callcenter");
for (int i = 0; i < filepath.length; i++) {
fu.download(filepath[i], localfilepath[i]);
}
// fu.upload();
// fu.download();
fu.closeConnect();
}
}
分享到:
相关推荐
总的来说,这个"Java FTP上传下载简单例子"是一个很好的起点,可以帮助初学者理解如何在Java环境中使用FTP进行文件传输。通过学习和理解这些基本操作,开发者可以进一步扩展功能,如错误处理、多线程上传下载、断点...
Java FTP上传和下载可以通过Apache Commons Net库的FTPClient实现,结合ScheduledExecutorService可以轻松创建定时任务来定期执行文件传输。这在需要自动化文件管理和备份的场景中非常有用。通过理解FTP的工作原理和...
这个“ftp上传下载例子”是一个关于如何使用Java实现FTP客户端功能的示例。它包括了上传和下载文件的基本操作,非常适合初学者理解FTP的工作原理和编程实现。 在提供的压缩包文件中,我们看到了以下几个关键的组件...
`FtpUpload.java`文件可能是这个FTP上传过程的实现,而`说明.txt`可能包含有关如何使用该代码或理解FTP上传的详细信息。学习这个例子,你可以了解FTP上传的基本流程,并根据自己的需求进行扩展,例如添加多文件上传...
在Java中实现FTP(文件传输协议)上传和下载文件功能,通常会使用Apache Commons Net库。这个库提供了FTPClient类,使得与FTP服务器交互变得简单。以下是对代码中涉及的知识点的详细解释: 1. **Apache Commons Net...
总结来说,这个FTP上传下载的例子展示了如何利用Apache Commons Net库在Java中实现FTP文件操作,这对于任何需要在应用程序中集成FTP功能的开发者来说都是一个基础且实用的教程。通过理解这些基本步骤和库的使用,你...
标题中的“利用commons-net包实现ftp上传下载例子”是指通过Apache Commons Net库来实现FTP(File Transfer Protocol)的上传和下载功能。Apache Commons Net是Apache软件基金会开发的一个Java库,它提供了多种网络...
Java FTP文件上传与下载是Java开发中常见的网络编程任务,主要涉及的是FTP(File Transfer Protocol)协议的应用。在本资源中,提供了实现FTP文件上传和下载功能的源码,包括了FTP连接、文件上传和下载的逻辑,以及...
ftp上传下载 java FTPClient - - ITeye技术网站 (2012年5月21日) FTP操作类:FTPClient - 石川 - 博客园 (2012年5月21日) JAVA中使用FTPClient上传下载 - hbcui1984的专栏 - 博客频道 - CSDN.NET (2012年5月21日) ...
这就是如何在Android中使用ftp4j库进行FTP上传和下载,并结合ProgressDialog显示进度条的基本步骤。在实际应用中,还需要处理各种异常情况,例如网络连接问题、文件不存在等,确保程序的健壮性。此外,考虑到Android...
近来做的一个项目因需要大量上传大文件且要求速度快,因此选择了FTP上传,在网上搜索了很多例子后并经自己对比整理后决定采用apache包中的FTP实现上传下载,在使用过程需要注意的是对中文名进行字符转码,FTP服务器...
下面将详细讲解如何使用Java的Swing库创建一个带有进度条的FTP文件上传功能。 首先,我们需要理解FTP的基本原理。FTP是一种用于在Internet上进行文件传输的标准协议。Java提供了一个内置的`java.net.FTPClient`类,...
Apache Commons Net提供了丰富的FTP操作接口,使得开发者能够方便地执行包括上传、下载、删除等在内的各种FTP操作。 首先,我们需要确保项目中包含了正确的依赖库。在描述中提到了几个jar文件,但`FtpClient`是属于...
通过这个例子,读者可以了解到如何使用Java语言完成与FTP服务器之间的基本交互操作。此外,本文还指出了示例代码中的一些潜在问题,并给出了相应的改进建议,希望能帮助开发者更好地理解和应用这些技术。
FTPUtil.java 是一个实用工具类,它封装了FTP相关的操作,如连接、登录、文件上传和下载等功能。这个类通常会包含以下关键知识点: 1. **FTP连接**:使用`org.apache.commons.net.ftp.FTPClient`类建立与FTP服务器...
Java操作FTP(File Transfer Protocol)是Java编程中的一项重要技能,尤其在开发涉及文件上传、下载、删除等网络操作的应用时。以下将详细介绍如何使用Java进行FTP的各种操作,并结合具体的代码示例进行讲解。 首先...
这个压缩包“JAVA FTP上传和下载”包含了实现FTP操作所需的JAR文件和源代码,帮助开发者快速集成FTP功能。 首先,我们要了解Java中的FTP客户端库,如Apache Commons Net。这个库提供了丰富的API,可以方便地执行FTP...
在Java编程领域,上传和下载功能是Web应用中常见的需求,尤其在文件管理、数据交换等方面。本示例提供了一个完整的Java实现,包括了代码和必要的jar包,可以帮助开发者理解和实现这一功能。以下是对这个主题的详细...
1. **Apache Commons Net库**:这是一个强大的Java FTP客户端库,提供了`FTPClient`、`FTPFile`等类,用于连接FTP服务器、登录、上传/下载文件、切换工作目录等操作。 2. **FTP连接**:使用`FTPClient`类建立与FTP...
Java FTP所需的jar包主要包括`commons-net-3.6.jar`和`jsch-0.1.49.jar`。这两个库在Java编程中扮演着重要角色,帮助开发者实现FTP...通过使用这些库,开发者可以高效且安全地完成文件的上传、下载和其他管理任务。