在Java/Groovy中验证文件/获取真实的文件类型?
我需要确定一个文件是否是一组给定的真类型,我想知道最好的方法是什么 实际上,我只需要检查PDF、图像和一些microsoft word文件类型。我听说过使用imagemagick和捕获异常来进行图像测试,但是其他的呢在Java/Groovy中验证文件/获取真实的文件类型?,java,file-upload,groovy,content-type,Java,File Upload,Groovy,Content Type,我需要确定一个文件是否是一组给定的真类型,我想知道最好的方法是什么 实际上,我只需要检查PDF、图像和一些microsoft word文件类型。我听说过使用imagemagick和捕获异常来进行图像测试,但是其他的呢 有什么想法吗?有一些方法可以获取MIME类型 前两个示例猜测基于文件扩展名的MIME类型,正如它所说的,一个更健壮的方法是使用,它支持 下面是一个使用Tika(在Groovy中)的示例: 这将产生: 15:15:56 [tim_yates@mac] TikaTest $ groov
有什么想法吗?有一些方法可以获取MIME类型 前两个示例猜测基于文件扩展名的MIME类型,正如它所说的,一个更健壮的方法是使用,它支持 下面是一个使用Tika(在Groovy中)的示例: 这将产生:
15:15:56 [tim_yates@mac] TikaTest $ groovy test.groovy
image/tiff
image/tiff
File是java.io.File的一个实例
就这样 MimetypesFileTypeMap在groovy中就像一个魔咒:
import javax.activation.MimetypesFileTypeMap
String contentType = new MimetypesFileTypeMap().getContentType("foo.gif")
println contentType
结果:image/gif这似乎解决了我需要的几乎所有文件类型!令人惊叹的!
file.toURL().openConnection().getContentType()
import javax.activation.MimetypesFileTypeMap
String contentType = new MimetypesFileTypeMap().getContentType("foo.gif")
println contentType