File renameTo
01/08/2017 12:03
Olá pessoal,
sempre que trabalhei com arquivos (file upload) em grails sempre gravei em banco de dados, então acabei não manipulando o arquivo. Com o passar do tempo observei que minha prática não era a mais adequada, então resolvi manipular os arquivos e coloca-los em disco. Digamos que eu vou realizar o upload do arquivo "minhaFoto.png", para isso fiz o seguinte código:
def fileUploaded = request.getFile('certificado')
if(fileUploaded){
def newNameFile = ('hash123456'+ '_' + fileUploaded.originalFilename)
def webRootDir = servletContext.getRealPath("/")
def userDir = new File(webRootDir, "/filesUploaded/")
userDir.mkdirs()
File originalFile = new File( userDir, fileUploaded.originalFilename)
originalFile.renameTo(newNameFile)
fileUploaded.transferTo(originalFile)
}
se eu olhar o newNameFile é uma String com o novo nome que eu desejo, mas quando eu realizo a cópia (transferTo) do arquivo para o diretório destino o nome do arquivo ainda é o nome original (minhaFoto.png).
Obrigado
Tags:
Grails, renameTo, file, file rename