设为首页 加入收藏

TOP

Java做的比较完善的FTP连接上传下载文件
2014-11-04 20:45:15 】 浏览:3028
Tags:Java 比较 完善 FTP 连接 上传下载 文件

  这是偶第一次写java程序实现公司要求的FTP数据同步,所有原代码如下,以供各位参考并提出宝贵意见!另外俺还有两个功能没有实现,有请高手指点一二:1、如何删除FTP服务器上已经下载过的文件?2、如何将上传的文件改名?上传时在文件名前加“temp_”,上传完毕后需要把文件名改回来。3、如何使用openPassiveDataConnection()方法将ftp连接更改为主动连接,因为要从unix系统配置的ftp服务器下载文件的话,就需要主动连接。



  /*



  *******************************************************************************************************



  Filename: ftp.java



  Author: leetsing(elove)



  Create date: 2004-08-30



  Use: connect to FTP server,then upload and download file



  Modify date: 2004-09-05 add to upload file



  2004-09-13 add to download file



  Copy right: Magisky Media Technology Co.,Ltd.



  *******************************************************************************************************



  */



  //import cz.dhl.io.*;



  //import cz.dhl.ftp.*;



  import sun.net.ftp.*;



  import sun.net.*;



  import java.applet.*;



  import java.io.*;



  import java.io.IOException;



  import java.util.StringTokenizer;



  import sun.net.ftp.FtpClient;



  import java.util.ArrayList;



  public class ftp extends Applet



  {



  FtpClient aftp;



  DataOutputStream outputs ;



  TelnetInputStream ins;



  TelnetOutputStream outs;



  int ch;



  public String a;



  String hostname="";



  private String path = "/";



  public static void main(String[] args)



  {



  String hostname = "192.168.0.56";



  int port = 2121;



  String uid = "lee";



  String pwd = "lee";



  String RWFileDir = "D:\\smsftp\\";//文件目录



  //连接ftp服务器



  ftp ft = new ftp();



  ft.connect(RWFileDir,hostname,port,uid,pwd);



  //下载文件



  if (ft.aftp != null){



  try {



  ft.getNameList(RWFileDir);



  }catch(IOException e)



  {



  System.out.println("下载文件出错:"+e);



  }



  }



  //上传文件



  if (ft.aftp != null){



  String sdir = RWFileDir + "subunsubfromsp\\";



  File fdir = new File(sdir);



  String FileName = "";



  for(int i=0;i FileName = sdir + (fdir.list());



  ft.uploadFile(RWFileDir,FileName);



  }



  //System.out.println("成功上传的文件:");



  //ft.showFileContents("subunsubfromsp\\");



  }



  //删除subunsubfromsp目录下已经上传的文件文件



  // ft.deleFile(RWFileDir);



  //断开服务器连接



  ft.stop(RWFileDir);



  }


  public FtpClient connect(String RWFileDir,String hostname,int port,String uid,String pwd)



  {



  this.hostname = hostname;



  System.out.println("正在连接"+hostname+",请等待.....");



  try{



  aftp = new FtpClient(hostname,port);



  aftp.login(uid,pwd);



  aftp.binary();



  //aftp.openPortDataConnection();



  a = "连接主机:"+hostname+"成功!";



  System.out.println(a);



  }


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Java的socket通信的demo 下一篇Java实现双向链表

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目