一尘不染

使用JSch将文件放入远程目录,如果该目录不存在,则创建它

java

我想使用Jsch库和SFTP协议将文件复制到远程目录。如果远程主机上的目录不存在,则创建它。

在API文档http://epaul.github.com/jsch-
documentation/javadoc/中,我在put方法中注意到有一种“模式”,但它只是传输模式: -传输模式,
RESUME,APPEND,OVERWRITE之一。

有没有一种简便的方法,而不必编写我自己的代码来检查是否存在然后递归创建目录?


阅读 762

收藏
2020-12-03

共1个答案

一尘不染

据我所知。我使用以下代码来实现相同的目的:

String[] folders = path.split( "/" );
for ( String folder : folders ) {
    if ( folder.length() > 0 ) {
        try {
            sftp.cd( folder );
        }
        catch ( SftpException e ) {
            sftp.mkdir( folder );
            sftp.cd( folder );
        }
    }
}

其中sftpChannelSftp对象。

2020-12-03