如何获取临时文件MultipartFile的真实文件类型
时间: 2023-11-12 11:58:46 浏览: 130
可以通过MultipartFile的getContentType()方法获取临时文件的ContentType,但是这个方法获取的并不一定是真实的文件类型,因为ContentType可以被伪造。为了获取真实的文件类型,可以使用第三方库如Apache Tika或者MimeUtil。
使用Apache Tika获取临时文件的真实文件类型的示例代码如下:
```
import org.apache.tika.Tika;
public String getRealFileType(MultipartFile file) throws IOException {
Tika tika = new Tika();
return tika.detect(file.getInputStream());
}
```
使用MimeUtil获取临时文件的真实文件类型的示例代码如下:
```
import eu.medsea.mimeutil.MimeUtil;
public String getRealFileType(MultipartFile file) throws IOException {
MimeUtil.registerMimeDetector("eu.medsea.mimeutil.detector.MagicMimeMimeDetector");
return MimeUtil.getMostSpecificMimeType(MimeUtil.getMimeTypes(file.getInputStream())).toString();
}
```
阅读全文