Eu estou tentando ler os arquivos dentro de uma pasta, mas quando eu executo o programa ele lança essa exceção. Eu tentei com algumas outras pastas também. Ele lança a mesma exceção.
Exception in thread "main" java.io.FileNotFoundException: C:\backup (Access is denied) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.(Unknown Source)
Você não pode abrir e ler um diretório, use os isFile()
e isDirectory()
para distinguir entre arquivos e pastas. Você pode obter o conteúdo das pastas usando os methods list()
e listFiles()
(para nomes de arquivo e File
s respectivamente). Você também pode especificar um filtro que selecione um subconjunto de arquivos listados.
Além disso, em alguns casos, é importante verificar as permissions da pasta de destino . Para dar permissão de gravação para o usuário pode ser a solução. Isso funcionou para mim.
Aqui está uma pegadinha que acabei de descobrir – talvez possa ajudar outra pessoa. Se estiver usando o Windows, a pasta de classs não deve ter a criptografia ativada! O Tomcat não parece gostar disso. Clique com o botão direito do mouse na pasta de classs, selecione “Propriedades” e clique no botão “Avançado …”. Certifique-se de que a checkbox de seleção “Criptografar o conteúdo para proteger os dados” esteja desmarcada. Reinicie o Tomcat.
Funcionou para mim, então espero que isso ajude outra pessoa também.