Package org.miaixz.bus.extra.ftp
Interface Ftp
- All Superinterfaces:
AutoCloseable,Closeable
- All Known Implementing Classes:
AbstractFtp,CommonsFtp,JschSftp,SshjSftp
FTP的统一规范接口
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionboolean打开指定目录,具体逻辑取决于实现,例如在FTP中,进入失败返回false, SFTP中则抛出异常boolean删除文件夹及其文件夹下的所有文件boolean删除指定目录下的指定文件void下载文件boolean文件或目录是否存在 提供路径为空则返回false提供路径非目录但是以'/'或'\'结尾返回false文件名是'.'或者'..'返回false获取FTP配置getFileStream(String path) 读取FTP服务器上的文件为输入流default boolean判断给定路径是否为目录遍历某个目录下所有文件和目录,不会递归遍历boolean在当前远程目录(工作目录)下创建新的目录void创建指定文件夹及其父目录,从根目录开始创建,创建完成后回到默认的工作目录pwd()远程当前目录(工作目录)如果连接超时的话,重新进行连接voidrecursiveDownloadFolder(String sourcePath, File destDir) 递归下载FTP服务器上文件到本地(文件目录和服务器同步), 服务器上有新文件会覆盖本地文件default booleantoParent()打开上级目录booleanuploadFile(String destPath, File file) 将本地文件上传到目标服务器,目标文件名为destPath,若destPath为目录,则目标文件名将与file文件名相同。 覆盖模式
-
Field Details
-
DEFAULT_CHARSET
默认编码
-
-
Method Details
-
getConfig
FtpConfig getConfig()获取FTP配置- Returns:
- FTP配置
-
reconnectIfTimeout
Ftp reconnectIfTimeout()如果连接超时的话,重新进行连接- Returns:
- this
-
pwd
String pwd()远程当前目录(工作目录)- Returns:
- 远程当前目录
-
cd
打开指定目录,具体逻辑取决于实现,例如在FTP中,进入失败返回false, SFTP中则抛出异常- Parameters:
directory- directory- Returns:
- 是否打开目录
-
toParent
default boolean toParent()打开上级目录- Returns:
- 是否打开目录
-
exist
文件或目录是否存在- 提供路径为空则返回
false - 提供路径非目录但是以'/'或'\'结尾返回
false - 文件名是'.'或者'..'返回
false
- Parameters:
path- 目录- Returns:
- 是否存在
- 提供路径为空则返回
-
isDir
判断给定路径是否为目录- Parameters:
dir- 被判断的路径- Returns:
- 是否为目录
-
mkdir
在当前远程目录(工作目录)下创建新的目录- Parameters:
dir- 目录名- Returns:
- 是否创建成功
-
mkDirs
创建指定文件夹及其父目录,从根目录开始创建,创建完成后回到默认的工作目录- Parameters:
dir- 文件夹路径,绝对路径
-
ls
遍历某个目录下所有文件和目录,不会递归遍历- Parameters:
path- 需要遍历的目录- Returns:
- 文件和目录列表
-
delFile
删除指定目录下的指定文件- Parameters:
path- 目录路径- Returns:
- 是否存在
-
delDir
删除文件夹及其文件夹下的所有文件- Parameters:
dirPath- 文件夹路径- Returns:
- boolean 是否删除成功
-
uploadFile
将本地文件上传到目标服务器,目标文件名为destPath,若destPath为目录,则目标文件名将与file文件名相同。 覆盖模式- Parameters:
destPath- 服务端路径,可以为null或者相对路径或绝对路径file- 需要上传的文件- Returns:
- 是否成功
-
download
下载文件- Parameters:
path- 文件路径outFile- 输出文件或目录
-
recursiveDownloadFolder
递归下载FTP服务器上文件到本地(文件目录和服务器同步), 服务器上有新文件会覆盖本地文件- Parameters:
sourcePath- ftp服务器目录destDir- 本地目录
-
getFileStream
读取FTP服务器上的文件为输入流- Parameters:
path- 文件路径- Returns:
InputStream
-