如何从 Java 中的 MIME 类型确定适当的文件扩展名
2022-09-01 04:22:47
我正在将文件上传到 Amazon s3 存储桶,并且有权访问 InputStream 和包含文件的 MIME 类型但不包含原始文件名的字符串。在将文件推送到S3之前,由我实际创建文件名和扩展名。是否有库或方便的方法来确定要从 MIME 类型中使用的适当扩展?
我已经看到了一些对Apache Tika库的引用,但这似乎有点过分,我还没有能够让它成功检测文件扩展名。从我能够收集到的信息来看,这段代码似乎应该有效,但是当我的类型变量是“image/jpeg”时,我只是得到一个空字符串。
MimeType mimeType = null;
try {
mimeType = new MimeTypes().forName(type);
} catch (MimeTypeException e) {
Logger.error("Couldn't Detect Mime Type for type: " + type, e);
}
if (mimeType != null) {
String extension = mimeType.getExtension();
//do something with the extension
}