Sono nuovo di JSch e java. Sono riuscito a ottenere alcuni codici e capirlo in qualche modo, ma sono bloccato su un punto. Il seguente codice scarica il file dal server SSH, ma ho bisogno del misuratore di avanzamento che mostra la percentuale del file copiato. Come posso farlo. Sarò molto grato del tuo aiuto.JSch sftp upload/download progress
import com.jcraft.jsch.ChannelSftp;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
import com.jcraft.jsch.SftpProgressMonitor;
public class SFTPExample {
public static void main(String args[]) throws Exception {
String user = "root";
String password = "password";
String host = "192.168.0.5";
int port = 22;
String knownHostsFilename = "/home/world/.ssh/known_hosts";
String sourcePath = "/media/nfs/genotype.txt";
String destPath = "genotype.txt";
JSch jsch = new JSch();
jsch.setKnownHosts(knownHostsFilename);
Session session = jsch.getSession(user, host, port);
session.setPassword(password);
session.connect();
ChannelSftp sftpChannel = (ChannelSftp) session.openChannel("sftp");
sftpChannel.connect();
System.out.println("Downloading test file");
sftpChannel.get(sourcePath, destPath);
sftpChannel.exit();
session.disconnect();
}
}
thanx fo la risposta .. Se sto lima di scaricare 100 MB in quel momento il mio valore in byte è: 32755 come ,,. Così mi spiegheresti perché sto ottenendo questo valore .. – NovusMobile
Puoi ottenere la dimensione dei dati trasferiti totali accumulando quel dato valore. – ymnk
Il link sembra non funzionare più – Hiran