用Java获取图像上传文件类型

时间:2012-07-04 08:42:11

标签: java jsp file-upload struts2

上传文件后,它将作为.tmp文件存储在临时目录中。

如何获取上传文件的实际文件类型?我需要知道它是否是来自服务器端的bmp,​​jpeg,png等。

注意:我也在使用Struts 2版本2.1.8.1

3 个答案:

答案 0 :(得分:2)

尝试触摸它的mime类型

File f = new File("temp.tmp");
System.out.println("Mime Type of " + f.getName() + " is " + new MimetypesFileTypeMap().getContentType(f));

输出应该是:image/gifimage/pngimage/jpg等。

答案 1 :(得分: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

答案 2 :(得分:1)

除了Truong Ha的答案(MimetypesFileTypeMap需要activation.jar)之外,还有其他一些方法:

http://www.rgagnon.com/javadetails/java-0487.html

欢呼声,