可以通过以下步骤实现:
下面是一个示例代码,演示了如何使用Jsch库将带有目录的文件传输到SFTP服务器:
import com.jcraft.jsch.*;
public class SftpExample {
public static void main(String[] args) {
String host = "sftp.example.com";
int port = 22;
String username = "your_username";
String password = "your_password";
String localFilePath = "/path/to/local/file";
String remoteDirectory = "/path/to/remote/directory";
try {
JSch jsch = new JSch();
Session session = jsch.getSession(username, host, port);
session.setPassword(password);
session.setConfig("StrictHostKeyChecking", "no");
session.connect();
Channel channel = session.openChannel("sftp");
channel.connect();
ChannelSftp sftpChannel = (ChannelSftp) channel;
sftpChannel.cd(remoteDirectory);
sftpChannel.put(localFilePath, remoteDirectory);
sftpChannel.disconnect();
session.disconnect();
System.out.println("File transferred successfully!");
} catch (JSchException | SftpException e) {
e.printStackTrace();
}
}
}
在上述示例代码中,需要将host
、port
、username
、password
、localFilePath
和remoteDirectory
替换为实际的值。这段代码将本地文件localFilePath
上传到SFTP服务器的remoteDirectory
目录下。
腾讯云提供了云服务器(CVM)和云存储(COS)等产品,可以用于搭建和管理云计算环境。具体的产品介绍和文档可以在腾讯云官网上找到。
领取专属 10元无门槛券
手把手带您无忧上云