当前位置: 首页 > 图文教程 > 认证考试 > java认证 > Java程序:FTP的上传下载功能实例

java认证
JAVA里字符编码的探索与理解
Java基本数据类型与流的操作方法
Web应用中Java的速度真相探讨
区分JAVA引用类型和原始类型
Java程序开发过程中异常处理的特殊情况
共享内存在Java中的实现和应用
Java复杂数据类型用法
漫谈Java程序设计中的接口应用
Java数据库编程中的几个常用技巧
Java中对HashMap的深度分析与比较
JavaBean与EJB的不同
Java技术 关于EJB调用原理分析
JAVA基础:Enterprise JavaBeans 入门
JAVA:EJB 的异常处理的最佳做法
JAVA:使用Axis开发Web Service程序
Java 中对文件的读写操作之比较
深入解析Java的新特性assertion
Java基础知识:你是否了解KVM的常量池
Static和Final修饰类属性变量及初始化
什么是基于Java的责任链模式

java认证 中的 Java程序:FTP的上传下载功能实例


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-04   浏览: 59 ::
收藏到网摘: n/a

FtpList部分是用来显示FTP服务器上的文件;

GetButton部分为从FTP服务器下传一个文件;

PutButton部分为向FTP服务器上传一个文件。

别忘了在程序中还要引入两个库文件(import sun.net.*,import sun.net.ftp.*)。

以下是这三部分的JAVA源程序:

(1)显示FTP服务器上的文件

void ftpList_actionPerformed(ActionEvent e) {

String server=serverEdit.getText();

//输入的FTP服务器的IP地址

String user=userEdit.getText();

//登录FTP服务器的用户名

String password=passwordEdit.getText();

//登录FTP服务器的用户名的口令


String path=pathEdit.getText();

//FTP服务器上的路径

try {

FtpClient ftpClient=new FtpClient();

//创建FtpClient对象

ftpClient.openServer(server);

//连接FTP服务器

ftpClient.login(user, password);

//登录FTP服务器

  if (path.length()!=0) ftpClient.cd(path);
  TelnetInputStream is=ftpClient.list();
  int c;
  while ((c=is.read())!=-1) {
  System.out.print((char) c);}
  is.close();
  ftpClient.closeServer();//退出FTP服务器
  } catch (IOException ex) {;}
  }

(2)从FTP服务器上下传一个文件

  void getButton_actionPerformed(ActionEvent e) {
  String server=serverEdit.getText();
  String user=userEdit.getText();
  String password=passwordEdit.getText();
  String path=pathEdit.getText();
  String filename=filenameEdit.getText();
  try {
  FtpClient ftpClient=new FtpClient();
  ftpClient.openServer(server);
  ftpClient.login(user, password);
  if (path.length()!=0) ftpClient.cd(path);
  ftpClient.binary();
  TelnetInputStream is=ftpClient.get(filename);
  File file_out=new File(filename);
  FileOutputStream os=new
  FileOutputStream(file_out);
  byte[] bytes=new byte[1024];
  int c;
  while ((c=is.read(bytes))!=-1) {
  os.write(bytes,0,c);
  }
  is.close();
  os.close();
  ftpClient.closeServer();
  } catch (IOException ex) {;}
  }

(3)向FTP服务器上上传一个文件

  void putButton_actionPerformed(ActionEvent e) {
  String server=serverEdit.getText();
  String user=userEdit.getText();
  String password=passwordEdit.getText();
  String path=pathEdit.getText();
  String filename=filenameEdit.getText();
  try {
  FtpClient ftpClient=new FtpClient();
  ftpClient.openServer(server);
  ftpClient.login(user, password);
  if (path.length()!=0) ftpClient.cd(path);
  ftpClient.binary();
  TelnetOutputStream os=ftpClient.put(filename);
  File file_in=new File(filename);
  FileInputStream is=new FileInputStream(file_in);
  byte[] bytes=new byte[1024];
  int c;
  while ((c=is.read(bytes))!=-1){
  os.write(bytes,0,c);}
  is.close();
  os.close();
  ftpClient.closeServer();
  } catch (IOException ex) {;}
  }
  }