如何在Java中将String转换为File,反之亦然?

时间:2011-07-22 05:56:56

标签: java grails groovy

将字符串转换为文件:我正在将文件传递给控制器​​中的操作

redirect(action:"downloadFile", params:[file:temp_file])

但是当我做的时候

def file = params.file
file.getName();

它给我错误cannot cast object 'java.lang.String' to 'java.io.File'

如何将String转换为File

1 个答案:

答案 0 :(得分:2)

如果您的params.file是用户正在上传的文件,则必须使用以下内容:

def file = request.getFile('file')
//where 'file' is a name of parameter, from <input type='file'/>

请详细了解file upload in Grails

如果您尝试将此文件发送到用户的浏览器,则:

String filename = '/reports/pdfreport9090.pdf'
response.contentType = "application/pdf"
response.setHeader("Content-disposition", "filename=$filename") 
File f = new File(filename)
response.outputStream << f.newInputStream()
response.outputStream.flush()