これは、私がここで達成しようとしたものへのフォローアップであるhttps://stackoverflow.com/questions/7313922/uploading-files-ussing-myfaces-tomahawk-jsf-2-0Javaは - 私は私のCドライブにアップロードしたイメージを保存するにはどうすればよい
私はUploadedFile
対象となる画像を得ることができたが、私きた
それをディスクに保存することはできないようです。私は私のアプリケーションを実行すると、私のデスクトップからファイル(test.jpg
など)をアップロードし、サーバーに保存されていることを確認できるようにローカルに保存したいとします(C:\Temp
など)。
私のBeanは非常に単純です:
import org.apache.myfaces.custom.fileupload.UploadedFile;
public class PatientBB {
private UploadedFile uploadedFile;
public UploadedFile getUploadedFile(){
return this.uploadedFile;
}
.
public void setUploadedFile(UploadedFile uploadedFile){
this.uploadedFile = uploadedFile;
}
.
public String actionSubmitImage(){
//This is th part I need help with. how do I save it in my C?
}
私は非常にあなたに感謝し、すべての助けに感謝します!
感謝。私は右の一時フォルダにファイルを持っています。ファイルはファイルでありイメージではありません。あなたがそれを宣言したので(InputStream)、あなたはそれをどこにでも使わなかったのです。 – Myy
良いキャッチ。修正しました。 UploadFileがイメージの場合、ファイルはイメージです。 Windowsエクスプローラなどで読み込む場合は、ファイルに適切な拡張子が付いている場合は、画像表示ソフトウェアで開きます。これは、すべてuploadedFile.getFilename()が返すもの(ファイル名に拡張子?を返すかどうか)によって異なります。また、uploadedFile.getContentTypeを使用してmimetypeを返すこともできます。必要に応じて適切な拡張子に変換できるはずです。 –
yay!それはうまくいった!名前に拡張子 '.jpeg'がありませんでした。しかし、何か異常なことが起こった。そのファイルにアクセスしようとすると、Windowsフォトビューアを開きました。「Windows Photo Viewerは、anotehrプログラムによって編集されているため、ファイルを開くことができません」というメッセージが表示されます。だから私はペイントでそれを開こうとしましたが、2-3分後に "C:\ temp \ testImage.jpegにアクセス中に共有違反が発生しました"というメッセージが突然現れました。何か案は? – Myy