Como verificar se existe um doc em um servidor FTP?

1 resposta
Raarm

Alguem tem alguma ideia de como eu faço para depois de verificar se o documento existe…poder criar o documento com seu nome original mais um contador.

ex. Eu tenho um documento com o nome teste.jpg em um servidor ftp…qdo eu for salvar um outro documento teste.jpg…eu preciso que ele verifique se existe e se existir…criar o teste(1).jpg…se vier outro teste…teste(2).jpg…e assim por diante.

Estou tentando assim…mas sem resultado:

.................
String nomeArquivo = "teste.png";
FTPClient ftp;
String[] arquivo = ftp.listNames();
int f=1;
boolean igual=false;
for(int i=0;i<arquivo.length;i++)
{
if(arquivo[i].equals(nomeArquivo))
{
igual=true;
}
}
if(igual==true)
{

//nao sei o que fazer aqui?  tentei.....usar String nome[] = nomeArquivo.split("."); nomeArquivo=nome[0]+"("+f+")"+nome[1]; mas no proximo ele sobrescreve este 
}
ftp.storeFile( nomeArquivo, is );
............

Alguem sabe como resolvo isto? :?>

1 Resposta

Raarm

Acabei fazendo assim...nao sei se é a melhor maneira.....mas funfou!!! :P

String ext = "png";
String nome = nomeArquivo+"."+ext;//nome arquivo é o que recebo.....teste
String[] arquivo = ftp.listNames();
//verifica se o arquivo existe
   for(int i=0;i<arquivo.length;i++)
     {
     	if(arquivo[i].equals(nome))
     		
     	   {
     	   	int t=1;
	            	nome=arquivo[i].replace(".png","")+"("+t+")."+ext;
	   }
     }
//atribui o tipo
     if( nome.endsWith(".txt") ) 
     {
            ftp.setFileType( FTPClient.ASCII_FILE_TYPE );

     } else 
         if( nome.endsWith(".png") )
         {
            ftp.setFileType( FTPClient.BINARY_FILE_TYPE );
         } else {
            ftp.setFileType( FTPClient.ASCII_FILE_TYPE );
        }
          
//faz o envio do arquivo
         ftp.storeFile( nome, is );
>
Criado 4 de dezembro de 2007
Ultima resposta 4 de dez. de 2007
Respostas 1
Participantes 1