使用java写一个sftp程序
时间: 2023-09-18 18:09:14 浏览: 117
要使用Java编写SFTP程序,需要使用JSch库。以下是一个简单的示例,演示如何使用JSch库从本地计算机上传文件到远程服务器:
```java
import com.jcraft.jsch.*;
public class SftpExample {
public static void main(String[] args) {
String user = "username";
String password = "password";
String host = "remote.host.com";
int port = 22;
String sourceFile = "/path/to/local/file.txt";
String destFile = "/path/to/remote/file.txt";
try {
JSch jsch = new JSch();
Session session = jsch.getSession(user, host, port);
session.setPassword(password);
session.setConfig("StrictHostKeyChecking", "no");
session.connect();
ChannelSftp channelSftp = (ChannelSftp) session.openChannel("sftp");
channelSftp.connect();
channelSftp.put(sourceFile, destFile);
channelSftp.disconnect();
session.disconnect();
} catch (JSchException | SftpException e) {
e.printStackTrace();
}
}
}
```
在此示例中,我们首先指定了远程服务器的用户名,密码,主机名和端口号。然后,我们指定要上传的本地文件的路径和要在远程服务器上创建的目标文件的路径。接下来,我们使用JSch库创建一个会话,并使用该会话打开SFTP通道。最后,我们使用put()方法将本地文件上传到远程服务器,并关闭通道和会话。
阅读全文