Removendo bloqueios de arquivos no Windows e Java
-
22-09-2019 - |
Pergunta
Eu tenho um programa Java que abre um arquivo usando a classe RandomAccessFile.
Eu gostaria de poder renomear esse arquivo enquanto é aberto pelo Java. No Unix, isso não é um problema. Alguém sabe como posso fazer isso no Windows?
Devo definir o Java para abri -lo de uma certa maneira?
Desde já, obrigado.
Editar, esclarecimento: eu gostaria de definir esse acesso ao compartilhamento de arquivos no meu código Java.
Solução
Você precisa fechar qualquer alça no arquivo de qualquer maneira. Por exemplo, a FileOutputStream
naquilo File
deve ser fechado antes que você possa renomeá -lo. É assim que o sistema de arquivos do Windows funciona.
Outras dicas
in_stream.close();
out_stream.getChannel().close();
out_stream.close();
De qualquer forma, no Windows, ele fica bloqueado:*(
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow