String nomeArquivo = "C:\" + arquivo.getName();
File arquivosDiretorio = new File("C:\");
File[] listaArquivos = arquivosDiretorio.listFiles();
List lista = new ArrayList();
for (int i = 0; i < listaArquivos.length; i++) {
lista.add(listaArquivos[i]);
}
if (lista.contains(nomeArquivo)){
System.out.println("ah");
}
Simples você estava comparando a String nome do arquivo com o objeto File, nunca ia entrar, fiz umas alterações para compilar ajusta e tenta de novo abraços.
File arquivo = new File("C:/temp/web.xml");
String nomeArquivo = arquivo.getAbsolutePath ();
System.out.println (nomeArquivo);
File arquivosDiretorio = new File(arquivo.getParent ());
File[] listaArquivos = arquivosDiretorio.listFiles();
List lista = new ArrayList();
for (int i = 0; i < listaArquivos.length; i++) {
lista.add(listaArquivos[i].getAbsolutePath ());
}
if (lista.contains(nomeArquivo)){
// while(arquivo.renameTo(new File(huawei.getDiretorioLocalTratados() + arquivo.getName()))) {
// String novoNome = arquivo.getName() + "_";
// arquivo.renameTo(new File(huawei.getDiretorioLocalTratados() + novoNome));
// }
System.out.println ("entrou");
}
Não está entrando no if porque a lista não contém o nome do arquivo.
Veja se dentro dessa lista os itens não estão com espaço em branco em volta (faça um trim() em cada item antes de colocar no ArrayList)
[quote=Roger75]Não está entrando no if porque a lista não contém o nome do arquivo.
Veja se dentro dessa lista os itens não estão com espaço em branco em volta (faça um trim() em cada item antes de colocar no ArrayList)[/quote]
Existe pq eu olhei o caminho de cada arquivo e o nomeArquivoe ambos são os mesmo!
thiago.correa,
Alterei o código, mas ainda não resolveu…ele continua não entrando no if
String nomeArquivo = "C:\HIPAAS_MEDIADOR\arquivos\Huawei\Tratados\" + arquivo.getName();
//File arquivo = new File("C:\HIPAAS_MEDIADOR\arquivos\Huawei\Tratados\x");
File arquivosDiretorio = new File("C:\HIPAAS_MEDIADOR\arquivos\Huawei\Tratados\");
File[] listaArquivos = arquivosDiretorio.listFiles();
List lista = new ArrayList();
for (int i = 0; i < listaArquivos.length; i++) {
lista.add(listaArquivos[i].getAbsolutePath());
}
if (lista.equals(nomeArquivo)){
while(arquivo.renameTo(new File(huawei.getDiretorioLocalTratados() + arquivo.getName()))) {
String novoNome = arquivo.getName() + "_";
arquivo.renameTo(new File(huawei.getDiretorioLocalTratados() + novoNome));
}
}