我的情景如下: 一个java程序正在将一些随机文件更新到SFTP位置。
我的要求是,一旦上一个java程序上传文件,使用java我需要下载该文件。文件大小可以是100MB。我正在寻找一些有用的java API。在这里,我甚至不知道文件的名称。但我可以为此保留正则表达式。以前的程序可以定期上传同一个文件。由于文件大小很高,我需要等到上传完整的文件。
我使用Jsch下载文件,但我没有得到如何使用jsch进行轮询。
答案 0 :(得分:1)
您所能做的就是定期继续列出远程目录,直到找到新文件。 SFTP没有更好的方法。为此,你显然使用ChannelSftp.ls()
。
关于选择符合特定模式的文件,请参阅:
JSch ChannelSftp.ls - pass match patterns in java
同样,在SFTP的广泛实施中没有对此的支持。
有关详细信息,请参阅我的回答:
SFTP file lock mechanism