本文待完善
1、主要代码
package com.ftp; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.InetSocketAddress; import java.net.SocketAddress; import sun.net.ftp.FtpClient; import sun.net.ftp.FtpProtocolException; public class FTPUtil { /** * 连接ftp服务器 JDK 1.7 * * @param url * @param port * @param username * @param password * @return FtpClient * @throws FtpProtocolException * @throws IOException */ public static FtpClient connectFTP(String url, int port, String username, String password) { // 创建ftp FtpClient ftp = null; try { // 创建地址 SocketAddress addr = new InetSocketAddress(url, port); // 连接 ftp = FtpClient.create(); ftp.connect(addr); // 登陆 ftp.login(username, password.toCharArray()); ftp.setBinaryType(); System.out.println(ftp.getWelcomeMsg()); } catch (FtpProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return ftp; } /** * 切换目录 * * @param ftp * @param path */ public static void changeDirectory(FtpClient ftp, String path) { try { ftp.changeDirectory(path); System.out.println(ftp.getWorkingDirectory()); } catch (FtpProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } /** * 关闭ftp * * @param ftp */ public static void disconnectFTP(FtpClient ftp) { try { ftp.close(); System.out.println("disconnect success!!"); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } /** * 上传文件 * * @param localFile * @param ftpFile * @param ftp */ public static void upload(String localFile, String ftpFile, FtpClient ftp) { OutputStream os = null; FileInputStream fis = null; try { // 将ftp文件加入输出流中。输出到ftp上 os = ftp.putFileStream(ftpFile); File file = new File(localFile); // 创建一个缓冲区 fis = new FileInputStream(file); byte[] bytes = new byte[1024]; int c; while ((c = fis.read(bytes)) != -1) { os.write(bytes, 0, c); } System.out.println("upload success!!"); } catch (FtpProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { try { if (os != null) os.close(); if (fis != null) fis.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } /** * 文件下载 * * @param localFile * @param ftpFile * @param ftp */ public static void download(String localFile, String ftpFile, FtpClient ftp) { InputStream is = null; FileOutputStream fos = null; try { // 获取ftp上的文件 is = ftp.getFileStream(ftpFile); File file = new File(localFile); byte[] bytes = new byte[1024]; int i; fos = new FileOutputStream(file); while ((i = is.read(bytes)) != -1) { fos.write(bytes, 0, i); } System.out.println("download success!!"); } catch (FtpProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { try { if (fos != null) fos.close(); if (is != null) { is.close(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
2、测试代码
package com.testCode; import java.net.InetAddress; import java.net.UnknownHostException; import sun.net.ftp.FtpClient; import com.ftp.FTPUtil; public class Test2 { public static void main(String[] args) { try { InetAddress addr = InetAddress.getLocalHost(); System.out.println(addr.getHostAddress()); } catch (UnknownHostException e) { // TODO Auto-generated catch block e.printStackTrace(); } String ip = "10.10.10.10"; int port = 21; String username = "root"; String password = "root"; String path = "/home"; // 连接ftp FtpClient ftp = FTPUtil.connectFTP(ip, port, username, password); System.out.println(ftp.getWelcomeMsg()); // 切换目录 FTPUtil.changeDirectory(ftp, path); System.out.println("-----上传----"); FTPUtil.upload("D:\\aaa.txt", "/home/aaa.txt", ftp); System.out.println("-----下载----"); FTPUtil.download("D:\\aaa.txt", "/home/aaa.txt", ftp); } }
相关推荐
很实用详细的ftp工具类!让你很容易测试你的ftp服务!
FTP测试备份
ftp测试操作培训
FTP 服务器测试工具,可修改FTP端口,FTP默认目录等,简单,直接双击运行即可。
适用的工具适用的工具适用的工具适用的工具适用的工具适用的工具适用的工具适用的工具
日常测试ftp功能,对接客户需求时需要简单测试ftp通讯
测试用的FTP工具好小呀好用呀测试用的FTP工具好小呀好用呀测试用的FTP工具好小呀好用呀测试用的FTP工具好小呀好用呀测试用的FTP工具好小呀好用呀测试用的FTP工具好小呀好用呀测试用的FTP工具好小呀好用呀测试用的FTP...
FTPServer工具,方便开发人员用FTP传输文件,以及测试等工作
Python源码,用于测试合宙通讯模块Air20的AT命令,使用模块的AT命令完成ftp上传下载文件的功能。
使用方法及讨论 http://winner.5d6d.com/thread-32-1-1.html
ftp的测试方法,专门的推荐,我的最喜欢
ftp测试用,功能有待完善,用于仪器之间的通信
简单易用的FTP绿色上传测试工具,无需安装,可在linux系统的服务器上进行测试。
vs2005开发FTP客户端,本人测试通过。希望大家给些建议,里面有点小瑕疵,没有去改!注释详细!
用面向对象开发的Java ftp小程序,解决文件传输,上传下载,删除等功能
模拟实现 ftp的基本功能 1. get,2.put,3. ls,4. by
该指南仅针对HSPA(+)的应用测试,利用详细的图解,逐步对Iperf / Http / Ftp / Ping/ video stream等测试进行说明,希望读者在图文中,逐步熟练掌握测试步骤。
大华远程端,可是实现远程监控,实时控制各监控点。
8 建立与实现一个FTP测试 9 建立与实现一个LDAP测试 10 建立与实现一个WebService测试 11 建立与实现 JMS Queue 测试(MQ测试) 12 建立与实现 JMS Topic 测试(MQ测试) 13 建立与实现 Monitor 测试 14 有关listeners ...
大数据 hdfs-over-ftp jar包。 基于maven工程打包的可执行jar包,支持hadoop版本cdh5.12.1,以及kerberos认证,配置kerberos信息的核心配置文件core.properties,下载集群相关认证信息配置即可,其他配置文件信息是...