`
friping
  • 浏览: 133879 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

ftp上传源码

阅读更多

 

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;

import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import org.apache.log4j.Logger;

 


public class FtpService extends BaseServiceSupport {
 
  public static FTPClient ftpClient;
 
  /**  连接服务器
   * 
   *  */
  private void connect() {
 
    try {
      String server = Configuration.getInstance().getFtpServerIp();
      String username = Configuration.getInstance().getFtpServerUsername();
      String password = Configuration.getInstance().getFtpServerPassword();
      ftpClient = new FTPClient();
      ftpClient.connect(server);
      ftpClient.login(username, password);
    }
    catch (IOException e) {
      e.printStackTrace();
    }
  }

  /**
   * 关闭连接
   */
  public void closeConnect() {
    try {
      ftpClient.disconnect();
    }
    catch (IOException e) {
      e.printStackTrace();
    }
  }


  /**
   * 上传
   *
   */
  public void upload(InputStream is,String filename) {
    try {
        String destFileName = filename;
        String tempFileName = "tmp_" + filename;
        boolean flag = ftpClient.storeFile(tempFileName, is);
        if (flag) {
          ftpClient.rename(tempFileName, destFileName);
        }
        is.close();
      }
    catch (IOException e) {
     e.printStackTrace();
    }
  }

  /**
   * 从服务器下载文件到本地
   */
  public void download(String filepath,String filename) {
    try {
      FTPFile[] fileList = ftpClient.listFiles();
      for (int i = 0; i < fileList.length; i++){
     if(fileList[i].getName().equals(filename))continue;
        String name = fileList[i].getName();
        File tempFile = new File(filepath + filename);
        File destFile = new File(filepath + filename);
        FileOutputStream fos = new FileOutputStream(tempFile);
        boolean flag = ftpClient.retrieveFile(name, fos);
        // 关闭文件流
        fos.close();
        if (flag) {
         tempFile.renameTo(destFile);
        }
      }
    }
    catch (IOException e){
     e.printStackTrace();
    }
  }

  /** 
   * 测试函数
   * @throws FileNotFoundException 
   */
  public static void main(String[] args) throws FileNotFoundException{
    FtpService fd = new FtpService();
    fd.connect();
    File file = new File("d:/logfile.log");
    InputStream in  = new FileInputStream(file);
    fd.upload(in,"logfile.log");
    fd.closeConnect();
  }
}

 

分享到:
评论

相关推荐

    易语言API实现FTP上传源码

    易语言是一种专为中国人...总之,易语言API实现FTP上传源码涉及到网络编程基础、FTP协议理解以及易语言的编程实践。通过这样的源码学习,可以深入理解网络文件传输的原理,并提升在易语言环境下进行网络编程的能力。

    c# ftp上传源码

    C# FTP上传源码涉及到的是使用C#编程语言实现FTP(File Transfer Protocol)协议来上传文件到远程服务器的技术。FTP是一种标准的网络协议,用于在计算机之间交换文件,而C#是微软开发的一种面向对象的编程语言,拥有...

    源程序_定时_PB6.5FTP上传源码_

    标题中的“源程序_定时_PB6.5FTP上传源码_”揭示了这是一个关于PowerBuilder 6.5(简称PB6.5)的编程项目,主要功能是实现FTP(File Transfer Protocol)文件上传,并且具备定时任务的特性。这个程序可能是为了自动...

    用C#写的FTP上传源码

    【C# FTP上传源码详解】 C#是一种广泛使用的面向对象的编程语言,尤其在Windows应用开发、游戏开发以及Web服务领域中占有重要地位。FTP(File Transfer Protocol)是用于在网络上进行文件传输的一种标准协议,它...

    易语言API实现FTP上传源码.zip易语言项目例子源码下载

    易语言API实现FTP上传源码.zip易语言项目例子源码下载易语言API实现FTP上传源码.zip易语言项目例子源码下载 1.合个人学习技术做项目参考 2.适合学生做毕业设计参考 3.适合小团队开发项目参考

    ftp 上传源码

    在这个“FTP 上传源码”中,我们可以期待找到使用VB.NET编写的FTP客户端程序的源代码,这对于学习或开发相关应用来说是非常有价值的资源。 FTP的基本概念包括两个主要角色:FTP服务器和FTP客户端。服务器端负责存储...

    FTP上传源码

    标题“FTP上传源码”指的是一个.NET编程项目,主要用于实现FTP(File Transfer Protocol)文件上传功能。这个项目可能是一个小型的实用工具或者示例代码,用于教育开发者如何在.NET环境中利用FTP协议上传文件到远程...

    易语言源码易语言FTP上传带进度源码.rar

    易语言源码易语言FTP上传带进度源码.rar 易语言源码易语言FTP上传带进度源码.rar 易语言源码易语言FTP上传带进度源码.rar 易语言源码易语言FTP上传带进度源码.rar 易语言源码易语言FTP上传带进度源码.rar ...

    FTP上传C#源码

    C#关于FTP文件上传的源码 if ftpClient null { OpenFileDialog open new OpenFileDialog ; if open ShowDialog DialogResult OK { try { ftpClient Put open FileName ; } ...

    易语言一款ftp登陆窗口源码.7z

    通过学习和分析这个源码,我们可以深入理解易语言如何实现用户界面交互以及FTP连接的基本流程。 首先,我们需要了解易语言的基础语法。易语言的核心理念是“易学易用”,其语法简洁明了,例如,常量定义、变量声明...

    Java Applet FTP上传 源码

    以前那个没有上传源码,这个是源码。 一个Java Applet小程序。提供FTP上传文件(目录),支持拖放本地文件。可配置上传文件的格式等。 测试配置:Tomcat6.0 (IE控件) FTP服务端:TYPSoft FTP Server Client

    易语言源码易语言FTP管理源码.rar

    易语言源码易语言FTP管理源码.rar 易语言源码易语言FTP管理源码.rar 易语言源码易语言FTP管理源码.rar 易语言源码易语言FTP管理源码.rar 易语言源码易语言FTP管理源码.rar 易语言源码易语言FTP管理源码.rar...

    vb.net 的FTP上传源码

    这里我们将深入探讨FTP上传的相关知识点,以及如何利用VB.NET实现这一功能。 首先,FTP是一种网络协议,用于在互联网上进行文件的传输。在VB.NET中,可以使用System.Net命名空间下的FtpWebRequest和FtpWebResponse...

    ftp上传源码工具

    ftp是综合性很强的上传源码工具,版本傻乎乎的大红花的

    FTP上传VB源码

    VB6.0开发的FTP DEMO 适合初学者

    ftp上传源码软件

    可以用的方便啊~可以上传源代码去自己的网站~很省事

    FTP上传与下载源码

    四、FTP上传源码要点: 1. 创建FTP连接:通过Socket建立TCP连接,使用FTP命令登录服务器。 2. 设置工作模式:根据需求选择主动或被动模式。 3. 选择上传目录:通过CWD命令改变工作目录。 4. 开始上传:使用STOR命令...

Global site tag (gtag.js) - Google Analytics