Tengo que leer un montón de archivos .CSV con nombres de archivos dinámicos de un servidor SFTP. Estos archivos se generan cada 15 minutos.Usando JSch ChannelSftp: ¿Cómo leer múltiples archivos con nombres dinámicos?
Estoy usando ChannelSftp de JSch, pero no hay ningún método que proporcione los nombres exactos de los archivos. Solo veo un método .ls()
. Esto da un Vector, p.
[drwxr-xr-x 2 2019 2019 144 Aug 9 22:29 .,
drwx------ 6 2019 2019 176 Aug 27 2009 ..,
-rw-r--r-- 1 2019 2019 121 Aug 9 21:03 data_task1_2011_TEST.csv,
-rw-r--r-- 1 2019 2019 121 Aug 9 20:57 data_task1_20110809210007.csv]
¿Hay una manera simple de leer todos los archivos en un directorio y copiarlos en otra ubicación?
Este código funciona para copiar un solo archivo:
JSch jsch = new JSch();
session = jsch.getSession(SFTPUSER,SFTPHOST,SFTPPORT);
session.setPassword(SFTPPASS);
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
channel = session.openChannel("sftp");
channel.connect();
channelSftp = (ChannelSftp)channel;
channelSftp.cd(SFTPWORKINGDIR);
channelSftp.get("data_task1_20110809210007.csv","data_task1_20110809210007.csv");
Gracias Paŭlo Ebermann. Eso es rápido Aprecio tu ayuda. – pingu
Tuviste suerte de tener 'jsch' en [mis etiquetas observadas] (http://stackexchange.com/filters/19305/palos-filter), y donde solo revisé algunos minutos después de haber publicado :-). Encantado de ayudar. –
¿este código sigue siendo aplicable para jsch 1.49? – ides