获取 java.io.File MIME 的最佳方法 输入 java 8
Best way to get java.io.File MIME Type in java 8
要获取我正在尝试使用的文件 mime 类型:
String mimeType = new MimetypesFileTypeMap().getContentType(document);
但总是returnsapplication octet stream
当我尝试使用
String mimeType = Files.probeContentType(document.toPath());
它总是 returns null
我试图获取其 MIME 类型的文档类型是:java.io.File
知道我该怎么做吗?
我已经在使用 Spring,spring 中是否有任何内容可以处理文件 mime 类型?
谢谢
最后我用了一个对象“org.apache.cxf.jaxrs.ext.multipart.Attachment
”而不是 java.io.File
您可以轻松处理附件
要获取 mimeType,您可以使用
public String getMimeType(Attachment document){
String mimeType = document.getDataHandler().getContentType();
return mimeType;
}
要获取文档大小,您可以使用:
public int getSize(Attachment document){
byte[] documentInByte;
try {
documentInByte =
IOUtils.toByteArray(document.getDataHandler().getInputStream());
} catch (IOException e) {
throw new UncheckedIOException(e);
}
return data.length;
}
要获取我正在尝试使用的文件 mime 类型:
String mimeType = new MimetypesFileTypeMap().getContentType(document);
但总是returnsapplication octet stream
当我尝试使用
String mimeType = Files.probeContentType(document.toPath());
它总是 returns null
我试图获取其 MIME 类型的文档类型是:java.io.File
知道我该怎么做吗? 我已经在使用 Spring,spring 中是否有任何内容可以处理文件 mime 类型?
谢谢
最后我用了一个对象“org.apache.cxf.jaxrs.ext.multipart.Attachment
”而不是 java.io.File
您可以轻松处理附件
要获取 mimeType,您可以使用
public String getMimeType(Attachment document){
String mimeType = document.getDataHandler().getContentType();
return mimeType;
}
要获取文档大小,您可以使用:
public int getSize(Attachment document){
byte[] documentInByte;
try {
documentInByte =
IOUtils.toByteArray(document.getDataHandler().getInputStream());
} catch (IOException e) {
throw new UncheckedIOException(e);
}
return data.length;
}