`
tw5566
  • 浏览: 459110 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

java实现ftp上传和删除

    博客分类:
  • java
阅读更多
package com.tw.ftp;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

import org.apache.commons.io.IOUtils;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;

/**
 *<p>ftp连接管理(使用apache commons-net-1.4.1 lib)</p>
 *@author tangw 2010-12-26
 *
 */
public class FtpConManager {
	private static FtpConManager instance;
	private FTPClient ftpClient =null;
	
	/**
	 * get FtpConManager
	 * @return FtpConManager
	 */
	public synchronized static FtpConManager getInstance(){
		if( instance == null ){
			instance = new FtpConManager();
		}
		return instance;
	}

	
	/**
	 * <p>ftp登录</p>
	 * @param s_url ftp服务地址
	 * @param uname 用户名
	 * @param pass  密码
	 */
	public void login(String s_url,String uname,String pass){
		ftpClient = new FTPClient();
		try{
			//连接
			ftpClient.connect(s_url);
			ftpClient.login(uname,pass);
			//检测连接是否成功
			int reply = ftpClient.getReplyCode();
			if(!FTPReply.isPositiveCompletion(reply)) {
				this.closeCon();
				System.err.println("FTP server refused connection.");
				System.exit(1);
			}
		}catch(Exception ex){
			ex.printStackTrace();
			//关闭
			this.closeCon();
		}
	}//end method login
	
	
	/**
	 * <p>ftp上传文件</p>
	 * @author tangw 2010-12-26
	 * @param srcUrl 须上传文件
	 * @param targetFname 生成目标文件
	 * @return true||false
	 */
	public boolean uploadFile(String srcUrl,String targetFname){
		boolean flag = false;
		if( ftpClient!=null ){
			 File srcFile = new File(srcUrl); 
			 FileInputStream fis = null;
			 try {
				fis  = new FileInputStream(srcFile);
				
				//设置上传目录 
				ftpClient.changeWorkingDirectory("/ImData/");
	            ftpClient.setBufferSize(1024); 
	            ftpClient.setControlEncoding("GBK"); 
	            
	            //设置文件类型(二进制) 
	            ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
	            //上传
	            flag = ftpClient.storeFile(targetFname, fis); 
			} catch (Exception e) {
				e.printStackTrace();
				this.closeCon();
			}finally{
				IOUtils.closeQuietly(fis);
			}
		}
		return flag;
	}//end method uploadFile
	
	
	/**
	 * 
	 * <p>删除ftp上的文件</p>
	 * @author tangw 2010-12-26
	 * @param srcFname
	 * @return true || false
	 */
	public boolean removeFile(String srcFname){
		boolean flag = false;
		if( ftpClient!=null ){
			try {
				flag = ftpClient.deleteFile(srcFname);
			} catch (IOException e) {
				e.printStackTrace();
				this.closeCon();
			}
		}
		return flag;
	}//end method removeFile
	
	/**
	 *<p>销毁ftp连接</p> 
	 *@author tangw 2010-12-26
	 */
	public void closeCon(){
		if(ftpClient !=null){
			if(ftpClient.isConnected()){
				try {
					ftpClient.logout();
					ftpClient.disconnect();
				} catch (IOException e) {
					e.printStackTrace();
				} 
			}
		}
	}//end method closeCon
}

 

 

package com.tw.ftp;

/**
 * <p>使用apache commons-net-1.4.1 实现ftp上传功能</p>
 * @author tangw 2010-12-26
 *
 */
public class FtpNetTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		FtpConManager.getInstance().login("ftp服务地址", "登陆名", "密码");
		//boolean flag = FtpConManager.getInstance().uploadFile("d:\\use_1.zip", "3.zip");
		boolean flag = FtpConManager.getInstance().removeFile("/ImData/3.zip");
		System.out.println("flag:"+flag);
		//FtpConManager.getInstance().closeCon();

	}

}

 

分享到:
评论
1 楼 iamaj2eeprogrammer 2011-05-12  
来学习了。

相关推荐

    Java实现ftp上传程序源代码

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

    java Android安卓FTP登录上传下载删除

    java Android安卓FTP登录上传下载删除java Android安卓FTP登录上传下载删除java Android安卓FTP登录上传下载删除java Android安卓FTP登录上传下载删除java Android安卓FTP登录上传下载删除java Android安卓FTP登录...

    java中FTP上传

    接下来,我们将逐步讲解实现FTP上传文件的步骤: 1. **创建FTPClient对象**: 首先,你需要实例化一个`FTPClient`对象,并设置连接参数,如主机地址、端口号、用户名和密码。 ```java FTPClient ftpClient = ...

    JAVA 操作FTP的工具类,上传,下载,删除功能都有了。

    首先,让我们详细了解一下FTP上传功能。在Java中,我们可以使用`FTPClient`类来实现文件的上传。我们需要创建一个`FTPClient`实例,然后连接到FTP服务器,通过`login()`方法登录。接着,设置数据类型为二进制(`...

    java 连接 FTP 文件操作(上传,下载,删除,复制

    本文将详细讨论如何使用Java连接FTP(File Transfer Protocol)服务器,进行文件的上传、下载、删除以及复制等操作。 首先,Java通过`java.net`和`javax.net`包提供了FTP客户端的功能。主要依赖于`java.net....

    使用java实现的linux和ftp服务器文件上传下载工具

    这是我使用java实现的linux和ftp服务器文件上传下载工具,需要电脑安装jdk8, 启动命令,java -jar linuxAndFtp.jar 启动成功后,浏览器访问:http://localhost:9999 服务器的账号密码通过服务器列表页面管理,添加的...

    java实现ftp的所有操作

    总的来说,这个Java FTP操作项目提供了一个全面的解决方案,涵盖了FTP交互的各个方面,对学习和实现FTP应用具有很高的参考价值。开发者可以根据自己的需求,结合这些代码示例进行修改和扩展,以适应不同的文件传输...

    java实现ftp文件的上传、下载、删除源码

    以上就是Java实现FTP文件上传、下载、删除的基本步骤和关键知识点。通过理解这些概念和API,开发者可以构建自己的FTP客户端程序,实现与FTP服务器的交互。对于初学者,理解并实践这些代码可以帮助他们更好地掌握Java...

    JAVA实现ftp客户端的上传、下载、删除

    以下将详细介绍如何使用Java实现FTP客户端的上传、下载和删除功能。 首先,Java的`java.net`包提供了Socket类来实现基本的网络连接,但直接使用它进行FTP通信并不方便。因此,通常我们会使用`org.apache.commons...

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

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

    ftp上传示例java代码

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

    JAVA实现FTP协议中的服务器和客户端(完善版).rar

    这个"JAVA实现FTP协议中的服务器和客户端(完善版).rar"压缩包文件,显然包含了一个使用Java编程语言实现FTP协议的完整项目。以下是关于FTP协议、Java编程以及如何实现FTP服务器和客户端的关键知识点: 1. FTP协议...

    java ftp客户端,服务端

    这个库包含了FTPClient和FTPServer类,提供了许多预定义的方法来处理FTP操作,如登录、上传、下载、删除文件等,大大减少了手动实现FTP协议的复杂性。 在编写Java FTP程序时,需要注意错误处理和异常处理,确保在...

    java实现ftp、sftp的文件上传和下载

    这篇内容将详细介绍如何使用Java实现FTP和SFTP的文件上传与下载,并涉及相关的Apache库。 FTP是一种基于TCP的服务,主要用于在互联网上进行文件传输。Java中可以使用Apache Commons Net库来实现FTP操作。首先,需要...

    Java实现ftp上传下载、删除文件及在ftp服务器上传文件夹的方法

    总结起来,Java实现FTP上传下载、删除文件及创建文件夹涉及的主要知识点有: 1. 使用FTP客户端库(如`sun.net.ftp.FtpClient`)。 2. 建立与FTP服务器的连接,登录和设置传输模式。 3. 文件上传,通过读取本地文件...

    JAVA 实现 FTP 客户端功能

    在Java中实现FTP客户端功能,可以让你的程序与FTP服务器交互,执行上传、下载、删除等操作。下面将详细介绍如何使用Java来实现FTP客户端功能,并提供相关的知识点。 1. **Java FTP API**: Java标准库提供了一个名为...

    FTP JAVA工具类(连接FTP,上传文件到FTP,删除FTP文件,下载FTP文件,检索FTP文件)

    本篇文章将详细讲解如何使用Java编写一个FTP工具类,实现连接FTP服务器、上传文件、删除文件、下载文件以及检索文件的功能。 首先,我们需要引入Apache Commons Net库,该库提供了丰富的FTP客户端API。在`pom.xml`...

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

    ### 用Java实现FTP批量大...本文介绍了一些关键的技术点和实现细节,希望能为相关领域的开发者提供一定的参考价值。在未来的工作中,还可以进一步探索如何利用最新的Java技术,比如JavaFX,来改进用户体验和提升性能。

    java删除ftp文件.txt

    利用Java语言编写FTP客户端程序,可以实现文件上传、下载、删除等操作。本文将详细介绍如何通过Java代码实现对FTP服务器上文件的删除操作,并对给出的代码片段进行分析与补充。 #### 二、基础知识 1. **FTP协议...

    java实现ftp功能

    根据提供的文件信息,我们可以总结出以下关于“Java实现FTP功能”的相关知识点: ### 1. FTP功能概述 FTP(File Transfer Protocol)是一种用于在网络上进行文件传输的协议。它支持基本的文件传输操作,如文件上传...

Global site tag (gtag.js) - Google Analytics