2011-07-22 14 views
1

を、文字列をファイルに変換する:私は文字列をJavaのファイルに変換する方法とその逆の方法はありますか?

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

コントローラ内のアクションにファイルを渡しています。しかし、私は

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

を行うときにはStringを変換する方法エラーに私にcannot cast object 'java.lang.String' to 'java.io.File'

を与えます〜File

答えて

2

あなたparams.fileのアップロードがuser'reファイルである場合は、以下を使用する必要があります。

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() 
+0

実際に私は別の質問があり、私は制御でこのファイルをダウンロードする必要があります.Iメソッドから文字列ファイル(/reports/pdfreport9090.pdf)を返すいますあなたがファイルをダウンロードする方法を教えてください。 – n92

+0

「コントローラのアクションでファイルをダウンロードする」という意味ですか?このファイルをブラウザに送信しようとしていますか? –

+0

はい、ファイルをブラウザに送信します。この操作はコントローラメソッド – n92

関連する問題