java制作ftp,使用Java制作FTP下载的方法

准备工作:       需要两个JDK包:commons-net-1.4.1.jar,jakarta-oro.jar包       使用工具:用的MyEclipse8.5       准备FTP服务器:找相关资源就行       创建项目:... 代码部分: import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPFile; import org.apache.commons.net.ftp.FTPReply; public class DownDemo {             public static boolean downFile(String url, int port, String username,                   String password, String remotePath, String fileName,                   String localPath) {             boolean success = false;             FTPClient ftp = new FTPClient();             try {                   int reply;                   ftp.connect(url, port);// 根据FTP服务器hostname和FTP服务器端口 ,连接                   // 如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器                   ftp.login(username, password);                   reply = ftp.getReplyCode();// 最后FTP的答复                   // 连接后检测返回码来校验连接是否成功                   if (!FTPReply.isPositiveCompletion(reply)) {                         ftp.disconnect();// 关闭连接到FTP服务器和恢复连接参数的默认值。                         return success;// false失败                   }                   ftp.changeWorkingDirectory(remotePath);// 转移到FTP服务器目录                       // 使用默认的系统autodetect机制,获得的一个列表文件信息,为当前工作目录。                   FTPFile[] fs = ftp.listFiles();                   for (FTPFile ff : fs) {                         System.out.println(ff.getName());                         if (ff.getName().equals(fileName)) {                               File localFile = new File(localPath + "/" + ff.getName());                               OutputStream is = new FileOutputStream(localFile);                               ftp.retrieveFile(ff.getName(), is);// 取出一个命名的文件到服务器并将其写在给定的OutputStream                               is.close();// 关闭                         }                   }                   ftp.logout();// 登出FTP服务器的命令                   success = true;             } catch (Exception e) {                   // TODO: handle exception                   e.printStackTrace();             } finally {                   if (ftp.isConnected()) {                         try {                               ftp.disconnect();                         } catch (IOException ioe) {                               ioe.printStackTrace();                         }                   }             }             return success;       } } public static void main(String[] args) {             boolean ftp = false;             DownDemo dd = new DownDemo();             String url = "127.0.0.1";// URL地址             int port = 21;// 端口号             String username = "sa";// 用户名             String password = "sa1234";// 密码             String remotePath = "/home/text/";// FTP服务器上的相对路径             String fileName = "testftp.txt";// 要下载的文件名             String localPath = "E:\\WorkTest\\ftpDemo\\src\\down";// 下载后保存到本地的路径             ftp = DownDemo.downFile(url, port, username, password, remotePath, fileName,localPath);             System.out.println(ftp); } 直接调用方法就可以下载了 P.S.:如果需要前台界面 可以做成按钮 触发事件,也可以做成超链接……就随意了~ P.S2: 文件下载之后最好重命名一下~ P.S3: 两个包的下载地址~我太善良了~ http://u.115.com/file/f97c1f2797# jakarta-oro.jar http://u.115.com/file/f97243124e# commons-net-1.4.1.jar

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值