Mover Arquivo - renameTo

2 respostas
L

Boa noite Galera;
estou tendo problemas para mover arquivos com o renameTO, pois hora o método move os arquivos corretamente e hora não move.
Na maioria das vezes quando faço o processo com o DEBUG tudo funciona corretamente, mas quando não é pelo DEBUG alguns arquivos não são movidos.

segue método:

private void moveArquivo(final String pastaTemporaria , final File arquivoOrigem) {
		
		File diretorioDestino = new File(pastaTemporaria );
		if (!diretorioDestino.exists()) {
			diretorioDestino.mkdir();
		} 
		arquivoOrigem.renameTo(new File(diretorioDestino, arquivoOrigem.getName()));
		
	}

Utilizo este método em dois trechos::

//Trecho 1:
File file = new File("C:/Arquivos");
	if (file.isDirectory()) {
		for (File fileTif : file.listFiles()) {
			if (fileTif.isFile()) {
                           File arquivoTif = new File(paramImagemVO.getDcCaminhoImagem() + "/" + (fileTif.getName()));	
                           moveArquivo("C:/imagens", arquivoTif);
							
		        }
                 }
         }
//Trecho 2:
File destinoImagens = new File("C:/imagens");
if (destinoImagens.isDirectory()) {
	for (File fileTif : destinoImagens.listFiles()) {
		File file = new File(destinoImagens + "/" + (fileTif.getName()));
		moveArquivo("C:/ImagensProcesssadas", file);
	}
}

Basicamente neste código, estou pegando os arquivos na pasta “C:/Arquivos”, movendo para C:/imagens, e quando processo todas elas estou movendo para C:/ImagensProcesssadas.

No primeiro processo de “C:/Arquivos”, movendo para “C:/imagens” todo os arquivos são movidos com sucesso, mas no segundo processo (de “C:/imagens” para “C:/ImagensProcesssadas”) alguns arquivos não são movidos quando executo o programa sem ser pelo modo debug.

Existe uma explicação para isso ?

Obrigado.

2 Respostas

mauricioadl

cara, tenta fazer igual a esse topico aqui:

http://javafree.uol.com.br/topic-853590-Copiar-arquivo-para-outro-diretorio.html

L

Irei tentar…

# public class Exemplo11_9  
# {  
#    public static void main (String arg[])  
#    {  
#      
#       File fl = new File("C:\Exercicio_Java\Cap11");  
#         
#       try  
#       {  
#          if(!fl.exists())  
#          {  
#               
#             System.out.println(" ");  
#             System.out.println("Confirma a criacao do diretorio ?");  
#                   System.out.println("pressione ENTER");  
#                   System.in.read(new byte[50]);  
#                   fl.mkdirs();  
#                   System.out.println("Diretorio Criado em "+fl.getPath());  
#              }  
#                     
#              fl.renameTo(new File("C:\Exercicio_Java\MeuArquivo"));//aki vc renomiea para outro diretorio  
#              fl.delete();  
#              fl = new File("C:\Exercicio_Java\MeuArquivo\CarrosArray.txt");  
#              fl.createNewFile();  
#              System.out.println(" ");  
#              System.out.println("\nNovo Nome :\t"+"  "+fl.getPath());  
#              System.out.println("Nome do arquivo :"+fl.getName());  
#              System.out.println("Propriedades de :\t"+fl.getPath());  
#              System.out.println("Leitura permitida :\t"+fl.canRead());  
#              System.out.println("Escrita permitida :\t"+fl.canWrite());  
#              System.out.println("Diretorio ? :\t\t"+fl.isDirectory());     
#              System.out.println("Arquivo ? :\t\t"+fl.isFile());  
#           }  
#       catch(IOException ioex)  
#       {  
#       System.out.println("Erro ocorrido !");  
#       }  
#    }  
# }
Criado 5 de julho de 2011
Ultima resposta 5 de jul. de 2011
Respostas 2
Participantes 2