【问题标题】:Get Image upload file type in Java在Java中获取图像上传文件类型
【发布时间】:2012-07-04 08:42:11
【问题描述】:

上传文件后,它会以 .tmp 文件的形式存储在临时目录中。

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

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

【问题讨论】:

    标签: java jsp file-upload struts2


    【解决方案1】:

    尝试触摸它的 mime 类型

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

    输出应该类似于:image/gifimage/pngimage/jpg 等。

    【讨论】:

      【解决方案2】:

      如果有的话,在 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;
      }
      

      然后你就可以访问上传文件的文件名和内容类型

      【讨论】:

        【解决方案3】:

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

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

        干杯,

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-04-15
          • 1970-01-01
          • 1970-01-01
          • 2014-12-10
          • 2013-04-11
          • 2019-12-21
          • 2014-01-23
          • 2011-07-03
          相关资源
          最近更新 更多