`
caiying0504
  • 浏览: 334030 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java使用FTP上传下载的例子

阅读更多
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 上传 例子 java FTP 上传 例子

    Java FTP上传下载 简单例子

    一个上传的例子,一个下载的例子.只包含两个方法,没有完整的类

    自己收集的多个Java FTP断点续传的例子源码

    ftp上传下载 java FTPClient - - ITeye技术网站 (2012年5月21日) FTP操作类:FTPClient - 石川 - 博客园 (2012年5月21日) JAVA中使用FTPClient上传下载 - hbcui1984的专栏 - 博客频道 - CSDN.NET (2012年5月21日) ...

    Java Ftp上传下载

    近来做的一个项目因需要大量上传大文件且要求速度快,因此选择了FTP上传,在网上搜索了很多例子后并经自己对比整理后决定采用apache包中的FTP实现上传下载,在使用过程需要注意的是对中文名进行字符转码,FTP服务器...

    FtpServer 附带java代码上传下载FTP代码例子

    FtpServer 解压即可使用 绿色版 附带java代码上传下载FTP代码例子

    Java使用Apache的FTPClient操作ftp

    Java程序使用Apache的commons-net-3.0.jar包中的org.apache.commons.net.ftp.FTPClient类实现对ftp上传、下载、删除等操作,是一个不错的东西哦

    java apatche ftp 支持断点续传等

    支持主被动模式,断点续传,里面是完整例子,含apatche的FTP .jar包

    自己写的用Java操作FTP的上传下载等

    里面是我写的用java操作ftp的例子 , 源代码工程包 全齐。希望对阁下有用

    最新版FTP上传需要的jar包和java FTPUtil例子

    最新版FTP上传需要的jar包和java FTPUtil例子 包括列出Ftp服务器上的所有文件和目录

    FTP源代码例子

    //"upftpfile"用ftp上传后的新文件名 //os = ftpClient.put("upftpfile"); os = ftpClient.put("MainCtrl.zip"); java.io.File file_in = new java.io.File(filename); if (file_in.length()==0) { return ...

    Java中FTP的操作(上传文件、下载文件、删除文件……)

    例子 博文链接:https://lifeioooo.iteye.com/blog/774795

    Java FTP程序实例.rar

    通过FTP连接远程主机,通过FTP服务显示服务器上的文件列表、对文件进行删除和浏览等操作,并可上传和下载FTP服务器上的文件,整体上较简单,只是简单实现了FTP的雏形,一个简单的Java FTP源码小例子,打基础可学习...

    java源码包---java 源码 大量 实例

    1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高...

    org.apache.commons.net.ftp jar包及FTP调用例子

    上传了收集的最新的 commons-io-2.4.jar 包 和 commons-net-3.3.jar 以及 FTP java调用例子。net 包是一个用于操作Internet基础协议(Finger,Whois,TFTP,Telnet,POP3,FTP,NNTP,以及SMTP)的底层API。Net包...

    java源码包4

    1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高...

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

    1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高...

    android ftp上传功能实现步骤

    今天讲一讲 android怎么上传文件到ftp 这个功能比较实用的,因为批量上传文件http post 用上传限制的。(特别是大文件) 1、先说说例子文件结构 ...4、ftp的java类 变量设置 5、上传单个文件 uploadSingleFile

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    EJB中JNDI的使用源码例子 1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件...

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

    1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高...

Global site tag (gtag.js) - Google Analytics