| 订阅 | 在线投稿
分享
 
 
 

如何在Java程序中实现FTP的上传下载功能

来源:互联网网民  宽屏版  评论
2008-06-13 06:49:06

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) {;}

}

}

 
特别声明:以上内容(如有图片或视频亦包括在内)为网络用户发布,本站仅提供信息存储服务。
 
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) {;}   }   }
󰈣󰈤
 
 
 
>>返回首页<<
 
 热帖排行
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
©2005- 王朝网络 版权所有