[英]File transfer using SFTP from another server
我可以使用以下代碼將本地系統文件上傳到 SFTP 客戶端,
try {
final SSHClient ssh = new SSHClient();
ssh.addHostKeyVerifier(new PromiscuousVerifier());
ssh.connect("100.XX.XX.XX");
ssh.authPassword("username", "password");
// ssh.authPublickey(null, arg);
final String src = "C:\\LocalFolder\\SFTPData\\file.txt";
File localFile = new File(src);
System.out.println(localFile.getName());
SFTPClient sftp = ssh.newSFTPClient();
sftp.put(localFile.getAbsolutePath(), "/home/user/test");
} catch (Exception e) {
}
但問題是,我需要從需要用戶名、密碼(\\100.xx.24.55\\SFTPData\\file.txt)的windows網絡共享路徑傳輸文件。
我們如何實現這一目標?
嘗試這個:
final String src = "\\\\100.xx.24.55\\SFTPData\\file.txt";
這相當於您使用\\\\100.xx.24.55\\SFTPData\\file.txt
打開文件資源管理器
當然,這需要您的 Windows 登錄帳戶具有從共享文件夾讀取文件的足夠權限。
如果您需要提供與 Windows 登錄憑據不同的憑據,您可以嘗試“使用不同的憑據映射網絡驅動器”,然后在代碼中使用選定的驅動器號進行引用,例如。 X:\\\\SFTPData\\\\file.txt
第三個選擇是使用 SMB Java 庫,例如。 SMBJ,連接到共享文件夾並讀取文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.