首页 > 开发 > Java > 正文

Java教程:如何实现FTP功能

2018-10-16 21:19:41
字体:
来源:转载
供稿:网友

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) {;}  }  }
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选