obter o arquivo mais recente do ftp
Tentando criar um plugin simples que simplesmente se conecte a um site ftp, procure o arquivo mais recente e faça o download. No entanto, ele não está recebendo o arquivo mais recente.
Estou usando o org.apache.commons.net.ftp.ftpclient para tudo.
Aqui está o meu 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;
}
Ele está recebendo a lista de arquivos e, em seguida, retornando um arquivo, simplesmente não é o arquivo mais recente. Existe alguma outra maneira de comparar datas de modificação de arquivos usando FTPClient ou alguém pode me indicar uma direção sobre o que estou fazendo de errado. Obrigado.