上傳文件後,它將作爲.tmp文件存儲在臨時目錄中。在Java中獲取圖像上傳文件類型
如何才能得到上傳文件的實際文件類型?我需要知道它是否是服務器端的bmp,jpeg,png等。
注:我還使用Struts 2的版本2.1.8.1
上傳文件後,它將作爲.tmp文件存儲在臨時目錄中。在Java中獲取圖像上傳文件類型
如何才能得到上傳文件的實際文件類型?我需要知道它是否是服務器端的bmp,jpeg,png等。
注:我還使用Struts 2的版本2.1.8.1
在JSP,如果你有
<s:form action="fileUpload" method="post" enctype="multipart/form-data" >
<s:file name="userFile" label="File" />
<s:submit />
</s:form>
在
ActionClass你需要添加
public void setUserFileContentType(String userImageContentType) {
this.userImageContentType = userImageContentType;
}
public void setUserFileFileName(String userImageFileName) {
this.userImageFileName = userImageFileName;
}
和那麼你將有權訪問上傳文件的fileName和contentType
嘗試觸摸它的MIME類型
File f = new File("temp.tmp");
System.out.println("Mime Type of " + f.getName() + " is " + new MimetypesFileTypeMap().getContentType(f));
輸出應該是這樣的:image/gif
或image/png
或image/jpg
等
除了張庭哈的回答(MimetypesFileTypeMap中需要的activation.jar),有一些其他方面也:
http://www.rgagnon.com/javadetails/java-0487.html
歡呼聲,
謝謝,我忘了提及圖書館 –