package ftp.apache.ftp;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.SocketException;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import ftp.FtpUser;
/**
*/
public class FtpApache {
private FTPClient ftpClient = null;
public boolean loginFtp(FtpUser ftpUser) throws SocketException,
IOException {
ftpClient = new FTPClient();
ftpClient.connect(ftpUser.getIp());
boolean success = ftpClient.login(ftpUser.getUserName(),
ftpUser.getPassWord());
if (success) {
System.out.println("ftp登录成功");
// 改变目录
if (changeFtpPath()) {
return true;
}
System.out.println("ftp目录改变失败");
return false;
}
return false;
}
public boolean changeFtpPath() {
try {
if (ftpClient.changeWorkingDirectory("/")) {
return true;
}
} catch (IOException e) {
System.out.println("改变当前的ftp目录 失败");
e.printStackTrace();
}
return false;
}
public void getFtpFileList(String ftpBookPath) {
/** 获得目录下的所有目录 */
FTPFile[] ftpFileList = null;
try {
ftpFileList = ftpClient.listFiles(ftpBookPath);
/** 循环遍历 */
for (int i = 0; i < ftpFileList.length; i++) {
/** ftpFile对象 */
FTPFile ftpFile = ftpFileList[i];
/** ftpFile 名称 */
String fileName = ftpFile.getName();
/** 路径名称 */
String clientMEB = ftpBookPath + fileName;
if (ftpFile.isFile()) {
System.out.println("文件路径:" + clientMEB);
continue;
}
}
} catch (IOException e) {
System.out.println("目录不存在");
e.printStackTrace();
}
}
public boolean downloadMEB(String path) {
OutputStream iStream = null;
try {
/** 设置以二进制方式传输 */
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
// 文件名
File f = new File("c:\\test4ffffffffffffffffff344.lst");
iStream = new FileOutputStream(f);
boolean flow = ftpClient.retrieveFile(path, iStream);
if (!flow) {
System.out.println("ftp流 不存在");
}
} catch (Exception e) {
e.printStackTrace();
return false;
} finally {
/** 断开 ftpClient */
ftpClientClose();
}
return true;
}
/**
* 断开 ftpClient
*/
private void ftpClientClose() {
if (ftpClient.isConnected()) {
try {
ftpClient.disconnect();
System.out.println("ftp断开");
} catch (IOException e) {
System.out.println("ftp关闭失败");
e.printStackTrace();
}
}
}
}
分享到:
相关推荐
Android FTP server 用org.apache.ftpserver实现, 可以设置端口号, 匿名或用户名密码 https://blog.csdn.net/weixin_42065195/article/details/106944004
在本文中,我们将深入探讨如何使用`org.apache.commons.net.ftp.FTPClient`包来实现简单的文件下载功能。这个过程涉及到几个关键步骤,包括连接到FTP服务器、登录、设置传输模式、下载文件以及断开连接。 首先,你...
org.apache.commons.net.ftp.FTPClient包,不错,在实际项目和产品中使用过。
.net.ftp.FTPClient jar ,exaple, commons-net-2.0.jar
org.apache.commons.net.ftp的官方完整jar包 放心使用
org.apache.commons.net.ftp.FTPClient FTP工具类,实现上传、下载、压缩到输出流下载等功能
FTP应用的jar包,主要用于java开发FTP上传下载
上传了收集的最新的 commons-io-2.4.jar 包 和 commons-net-3.3.jar 以及 FTP java调用例子。net 包是一个用于操作Internet基础协议(Finger,Whois,TFTP,Telnet,POP3,FTP,NNTP,以及SMTP)的底层API。Net包...
Apache Commons Net库是Java开发人员在处理网络协议时的一个强大工具,特别是对于FTP(文件传输协议)操作。标题"org.apache.commons.net.ftp"表明这个压缩包包含了与Apache Commons Net库中FTP相关的类和功能。描述...
sun.net.ftp.FtpClient,it.sauronsoftware.ftp4j.FTPClient,org.apache.commons.net.ftp.FTPClient三种不同的方式操作FTP
Java中的Apache FtpServer库为开发人员提供了一个强大的框架,用于在Java应用程序中轻松地创建和管理FTP服务器。Apache FtpServer提供了丰富的API,可以定制服务器的行为,满足各种需求。本篇文章将深入探讨如何利用...
Apache FTPServer是一款开源的FTP(File Transfer Protocol)服务器软件,主要负责在互联网上进行文件传输。这个特定的压缩包“apache-ftpserver-1.1.1.zip”包含了该服务器软件的v1.1.1版本,适用于Linux和Windows...
标签中的"org.apache.commons.net.ftp"表明此包重点在于FTP(File Transfer Protocol)支持。FTP是一种用于在网络上进行文件传输的协议,Apache Commons Net库中的FTP组件提供了丰富的API,使得开发者可以轻松地在...
利用org.apache.commons.net.ftp.*实现FTP批量下载,包括子目录文件
在3.3版本中,`org.apache.commons.net.ftp.FTPClient`类是实现FTP通信的核心组件。这个类提供了一系列方法,允许开发者与FTP服务器进行交互,执行如上传、下载、删除文件、创建目录等操作。 FTPClient类的主要功能...
Apache Commons 是一个由Apache软件基金会开发的Java库项目,它提供了大量的可重用Java组件,极大地简化了开发人员的工作。这个"org.apache.commons.jar"包是Apache Commons项目的一部分,其中包含了该目录下的一...
5. **Apache Commons Net**: 提供了一系列与网络相关的类,如 FTP 客户端、SMTP 邮件发送、TCP 连接和 URL 处理等。这对于需要进行网络通信的应用程序非常有用。 6. **Apache Commons Codec**: 包含了多种编码和...
Apache Commons 是一个由 Apache 软件基金会维护的开源项目,它提供了许多Java库,用于解决常见的编程任务。这些库通常包含实用工具类、数据结构、算法和其他对开发人员有用的组件。"org.apache.commons"是这个项目...
org.apache.commons.net.ftp.parser org.apache.commons.net.io org.apache.commons.net.nntp org.apache.commons.net.ntp org.apache.commons.net.pop3 org.apache.commons.net.smtp org.apache.commons.net....