Ftp download diretorio

3 respostas
T
Consigo fazer o download de um arquivo atravez do commons-net
public static void main( String[] args ) {  
            
            FTPClient ftp = new FTPClient();  
            try {  
                ftp.connect( "xxx" );  
                  
                //verifica se conectou com sucesso!  
                if( FTPReply.isPositiveCompletion( ftp.getReplyCode() ) ) {  
                    ftp.login( "xx", "xx" );  
                } else {  
                    //erro ao se conectar  
                    ftp.disconnect();  
                    System.out.println("Conexão recusada");  
                    System.exit(1);  
                }  
               
                 ftp.changeWorkingDirectory("xx");                  
                 FileOutputStream arq = new FileOutputStream("D:\\Dados\\Documents\\require");
                 ftp.retrieveFile("require", arq);
                 
                 arq.close();
            
               } catch( Exception e ) {  
                System.out.println("Ocorreu um erro: "+e);  
                System.exit(1);  
                
            }  
                  
        }

como posso fazer download de um diretorio inteiro?
existe alguma maneira?

3 Respostas

E

Liste o diretório e puxe os arquivos um de cada vez.

http://commons.apache.org/net/apidocs/org/apache/commons/net/ftp/FTPClient.html

O comando equivalente do ftp para puxar vários arquivos de uma vez é o “mget”, mas ele não está implementado no FTPClient. Portanto, você vai ter de listar o diretório.

T

entanglement:
Liste o diretório e puxe os arquivos um de cada vez.

http://commons.apache.org/net/apidocs/org/apache/commons/net/ftp/FTPClient.html

O comando equivalente do ftp para puxar vários arquivos de uma vez é o “mget”, mas ele não está implementado no FTPClient. Portanto, você vai ter de listar o diretório.

pelo visto vou ter q fazer na mão :frowning: , o problema é a quantidade de subdiretorios existentes.

Muito obrigado pela ajuda

E

tioola:
entanglement:
Liste o diretório e puxe os arquivos um de cada vez.

http://commons.apache.org/net/apidocs/org/apache/commons/net/ftp/FTPClient.html

O comando equivalente do ftp para puxar vários arquivos de uma vez é o “mget”, mas ele não está implementado no FTPClient. Portanto, você vai ter de listar o diretório.

pelo visto vou ter q fazer na mão :frowning: , o problema é a quantidade de subdiretorios existentes.

Muito obrigado pela ajuda

Em alguns servidores FTP é possível executar comandos remotos, como o tar ou o zip. Se esse servidor FTP suportar isso, pode-se executar algum comando como um "tar cfz " ou “zip -r1” coisa parecida, e então você baixa o tar ou o zip, e o descompacta na sua máquina. A vantagem nesse caso é se a conexão for lenta e o servidor estiver com CPU ociosa, você resolve o problema de conexão lenta e o problema de subdiretórios

Criado 13 de setembro de 2011
Ultima resposta 14 de set. de 2011
Respostas 3
Participantes 2