Tratando de crear un plugin simple que simplemente se conecta a un sitio ftp, busca el último archivo y luego lo descarga. Sin embargo, no está obteniendo el último archivo.obtener el último archivo de ftp
Estoy usando el org.apache.commons.net.ftp.ftpclient para todo.
Aquí está mi código
public static void main(String[] args)
{
FTPClient client = new FTPClient();
try
{
client.connect(host);
client.login(user, pwd);
FTPFile[] files = client.listFiles();
FTPFile lastFile = lastFileModified(files);
System.out.println(lastFile.getName());
client.disconnect();
}
catch(SocketException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch(IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static FTPFile lastFileModified(FTPFile[] files) {
Date lastMod = files[0].getTimestamp().getTime();
FTPFile choice = null;
for (FTPFile file : files) {
if (file.getTimestamp().getTime().after(lastMod)) {
choice = file;
lastMod = file.getTimestamp().getTime();
}
}
return choice;
}
Se está haciendo la lista de archivos, y luego devolver un archivo, simplemente no es el archivo más reciente. ¿Hay alguna otra forma de comparar las fechas de modificación de archivos usando FTPClient o puede alguien señalarme en una dirección sobre lo que estoy haciendo mal. Gracias.
Es getTimestamp() informar sobre los valores correctos para todos los archivos? –
sí ............. – Ryan