FTP para java PROBLEMA!

3 respostas
king_of_gods

Olá,
Estou tentando criar um programa q descarregue arquivos do meu servidor ftp para minha máquina.

Estou com um problema.
O arquivo qdo chega vem com 0 de tamanho. E sem informações.

Gostaria de saber qual o erro:

public static void recebeArquivos(LinkedList<String> list ){ FTPClient ftp = new FTPClient(); String _nomeArquivo = null; try { ftp.connect( "ftp.xxx.com.br" ); //verifica se conectou com sucesso! if( FTPReply.isPositiveCompletion( ftp.getReplyCode() ) ) { ftp.login( "XXX", "yyyyy" ); } else { //erro ao se conectar ftp.disconnect(); JOptionPane.showMessageDialog(null,"Conexão recusada","ERRO!",JOptionPane.ERROR_MESSAGE ); System.exit(0); } ftp.changeWorkingDirectory("/teste"); //para cada arquivo informado... for( int i=0; i<list.size(); i++ ) { OutputStream os = new FileOutputStream(list.get(i)); ftp.setFileType( FTPClient.ASCII_FILE_TYPE ); ftp.retrieveFile(list.get(i), os ); } ftp.disconnect(); JOptionPane.showMessageDialog(null,"Arquivos Transferidos com sucesso!","Confirmação!",JOptionPane.WARNING_MESSAGE); } catch( Exception e ) { JOptionPane.showMessageDialog(null,"Ocorreu um erro: "+e,"ERRO!",JOptionPane.ERROR_MESSAGE ); System.exit(0); } }

Gostaria da ajuda de vocês para solucionar esse problema.
Obrigado!

3 Respostas

T

Você não se esqueceu de fechar os arquivos? Se você não fizer isso, os arquivos resultantes, se os arquivos originais forem pequenos, acabam ficando zerados.

for( int i=0; i&lt;list.size(); i++ ) { OutputStream os = new FileOutputStream(list.get(i)); ftp.setFileType( FTPClient.ASCII_FILE_TYPE ); ftp.retrieveFile(list.get(i), os ); os.close(); } >

king_of_gods

thingol me diz uma coisa.
Como faço para acessar um arquivo q está dentro de uma pasta.
Por exemplo.

No meu ftp ta assim

Pasta Web / Pasta Teste / Arquivo.txt

Como eu acesso esse arquivo?

T
ftp.changeWorkingDirectory("/teste");

Você já fez isso, só que para um nível ("/teste"). Veja se é possível avançar mais níveis.

E de qualquer maneira é sempre bom conferir, usando seu cliente FTP preferido, para ver se você está fazendo as coisas direito.

Criado 11 de julho de 2007
Ultima resposta 11 de jul. de 2007
Respostas 3
Participantes 2