SFTP - 正在下载 JSch 重命名文件

SFTP - JSch rename file being dowloaded

我正在尝试开发一个程序,用于将一组文件从 SFTP 服务器检索到另一个本地目录。

我为此使用了 JSch 库。

使用 get 方法下载文件。

ChannelSftp connection = connect(host, port, user, password);
connection.get(fileName, localFolder, null, mode);

业务需求是如果文件下载不完整,他们无法从本地目录中检索。

如何重命名本地目录下正在下载的文件,直到下载完成?

下载完成后,我们将文件重命名为他的真实文件名(服务器SFTP的文件名)

.getdst 参数中使用完整文件路径,包括(临时)文件名,而不仅仅是目录路径。

connection.get(fileName, localFolder + "/tempname", null, mode);

Rename the file.get 完成后,使用 File.renameTo().