java 实现ftp下载_java实现ftp的上传和下载

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

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值