package classTest; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import org.apache.commons.net.ftp.FTPClient; public class FtpOperate { private FTPClient client = new FTPClient(); /** * 登录FTP,并返回登录是否成功的Boolean值 * @param host * @param port * @param user * @param password * @return */ public boolean login(String host, int port, String user, String password) { boolean flag = true; try { //防止乱码,且设置编码方式必须在连接ftp之前 client.setControlEncoding("GBK"); client.connect("192.168.19.190", 10086); client.login("zqz", "123456"); } catch (Exception e) { e.printStackTrace(); flag = false; } return flag; } /** * 关闭FTP连接 */ public void close() { if(client.isConnected()) { try { client.disconnect(); } catch (Exception e) { e.printStackTrace(); } } } /** * 在父级节点创建子节点目录,如果父级节点为根节点parent可以为空或“/” * @param parent * @param path * @return */ public boolean makeDir(String parent, String path) { boolean flag = true; flag = cdAssignPath(parent); if(flag) { try { //创建已经存在的目录会报错 client.makeDirectory(path); }catch (Exception e) { e.printStackTrace(); flag = false; } } return flag; } /** * 上传文件 * @param path保存FTP位置 * @param file要上传的文件 * @param remoteName在FTP保存时的名字 */ public void upload(String path, File file, String remoteName) { try { if(cdAssignPath(path)) { System.out.println("=="); client.storeFile(remoteName, new FileInputStream(file)); } }catch (Exception e) { e.printStackTrace(); } } /** * 下载文件 * @param remotePath * @param remoteName * @param localPath * @param localName */ public void download(String remotePath, String remoteName, String localPath, String localName) { if(cdAssignPath(remotePath)) { try { File file = new File(localPath); if(!file.exists()) { file.mkdirs(); } FileOutputStream write = new FileOutputStream(new File(localPath + "/" + localName)); client.retrieveFile(remoteName, write); write.close(); } catch (Exception e) { e.printStackTrace(); } } } /** * 获取指定路径下的文件列表 * @param path * @return */ public String[] ls(String path) { if(cdAssignPath(path)) { try { return client.listNames(); } catch (Exception e) { e.printStackTrace(); } } return null; } /** * 切换当前目录到指定路径,该路径必须从根路径("/")开始 * @param path * @return */ public boolean cdAssignPath(String path) { boolean flag = true; try { client.changeWorkingDirectory(path); } catch (IOException e) { e.printStackTrace(); flag = false; } return flag; } }
相关推荐
在本文中,我们将深入探讨如何使用`org.apache.commons.net.ftp.FTPClient`包来实现简单的文件下载功能。这个过程涉及到几个关键步骤,包括连接到FTP服务器、登录、设置传输模式、下载文件以及断开连接。 首先,你...
org.apache.commons.net.ftp.FTPClient包,不错,在实际项目和产品中使用过。
org.apache.commons.net.ftp.FTPClient FTP工具类,实现上传、下载、压缩到输出流下载等功能
FTP应用的jar包,主要用于java开发FTP上传下载
在3.3版本中,`org.apache.commons.net.ftp.FTPClient`类是实现FTP通信的核心组件。这个类提供了一系列方法,允许开发者与FTP服务器进行交互,执行如上传、下载、删除文件、创建目录等操作。 FTPClient类的主要功能...
org.apache.commons.net.ftp的官方完整jar包 放心使用
.net.ftp.FTPClient jar ,exaple, commons-net-2.0.jar
sun.net.ftp.FtpClient,it.sauronsoftware.ftp4j.FTPClient,org.apache.commons.net.ftp.FTPClient三种不同的方式操作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包...
标题"org.apache.commons.net.ftp"表明这个压缩包包含了与Apache Commons Net库中FTP相关的类和功能。描述提到“所有jar包里边都有”,这意味着你将获得完整的FTP支持,包括所有必要的依赖。 Apache Commons Net库...
在本文中,我们将深入探讨如何使用Apache Commons Net库和Java内置的`sun.net.ftp.FtpClient`来实现FTP(文件传输协议)的功能,包括上传、下载、批量操作以及删除文件。这两个库提供了丰富的API,使得在Java应用...
ftpClient.setDefaultFileTransferMode(FTP.BINARY_FILE_TYPE); ftpClient.connect("ftp.server.com"); int replyCode = ftpClient.getReplyCode(); if (!FTPReply.isPositiveCompletion(replyCode)) { throw new ...
FTPClient封装了所有必要的功能来存储和检索从FTP服务器上的文件。 这个类负责所有与FTP服务器交互的底层细节,并提供了便捷的更高层次的接口。 正如来自所有类SocketClient ,您必须首先连接到与服务器connect做...
import org.apache.commons.net.ftp.FTP; import org.apache.commons.net.ftp.FTPClient; FTPClient ftpClient = new FTPClient(); try { ftpClient.connect("ftp.server.com", 21); // 连接到FTP服务器 ...
Java程序使用Apache的commons-net-3.0.jar包中的org.apache.commons.net.ftp.FTPClient类实现对ftp上传、下载、删除等操作,是一个不错的东西哦
该客户端软件使用的是org.apache.commons.net.ftp.FTPClient这个类,FTPClient这个类,该类具体的可查看官网的api文档,链接:FTPClient API,需要自己导入jar包,我下载的是commons-net-3.6.jar,下载链接为...
import org.apache.commons.net.ftp.FTPClient; public class JFtpExample { public static void main(String[] args) { FTPClient client = new FTPClient(); try { // 连接到FTP服务器 client.connect("ftp....
Apache Commons 是一个由 Apache 软件基金会维护的开源项目,它提供了大量Java类库,以帮助开发者处理常见的编程任务。这些类库弥补了Java标准库中的不足,为开发人员提供了一套强大且实用的工具。在本压缩包中,您...
import org.apache.commons.net.ftp.FTP; import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPReply; ``` 在`FtpUtils`类中,定义一个连接到FTP服务器的方法: ```java public ...
首先,我们需要引入Java的FTP客户端库,通常使用`org.apache.commons.net.ftp`包中的`FTPClient`类。Apache Commons Net是Apache软件基金会提供的一组网络协议实用工具,包括对FTP协议的支持。 1. **连接FTP服务器*...