java - 如何获取没有扩展名的文件的内容类型?

标签 java mime-types file-type

<分区>

我已经保存了所有类型的没有扩展名的文件。通过Java代码读取时,如何获取文件的内容类型?

File file = "/admin/sun"
byte[] pdfByteArray = FileUtils.readFileToByteArray(file);
if (fileName.endsWith(".pdf")) {
    response.setContentType("application/pdf");
} else {
    response.setContentType("image/jpeg");
}
response.getOutputStream().write(pdfByteArray);
response.getOutputStream().flush();

如果文件扩展名 .pdf 或 .jpeg 可以正常工作,那么在没有扩展名的情况下如何获取内容类型呢?

最佳答案

在 jdk7 中使用 Files.probeContentType(path)。或者自己检测文件类型,根据不同的文件类型规范。说pdf http://www.adobe.com/devnet/pdf/pdf_reference.html

关于java - 如何获取没有扩展名的文件的内容类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21202171/

相关文章:

http - "application/*+json"是 HTTP 中的有效 Accept header 吗

java - Head First Java Mix For 5 练习 - 中断子句

java - 有没有一个漂亮的解决方案来禁用所有电子邮件通知?

java.util.zip.ZipException : error in opening zip file while having whitespace in url path

javascript - 如何设置本地文件的MIME类型?

php - 检查上传文件的最可靠方法是图像

.net - 如何确定一个文件是否是.NET 中的图像文件?

objective-c - 将文件类型/扩展名关联到基于非文档的 Cocoa 应用程序

installation - 如何使用 WiX 安装程序将应用程序与现有文件类型关联?

java - 同时启动两个无限循环的线程