如果我传递 .mp4 扩展名或完整文件名,Java 中是否有任何 API 可以将 mime-type 或 content-Type 作为 video/mp4 返回?
谢谢
如果我传递 .mp4 扩展名或完整文件名,Java 中是否有任何 API 可以将 mime-type 或 content-Type 作为 video/mp4 返回?
谢谢
我最近发布了我的SimpleMagic包,它实现了与 Unix file(1) 命令相同的功能。它使用内部配置文件,或者可以读取/etc/magic
、/usr/share/file/magic
或其他魔法(5)文件并确定来自File
、InputStream
或的文件内容byte[]
。它实际上使用文件的内容字节,而不仅仅是名称。
github 源代码、javadocs 和一些文档的位置可从主页获得。
您可以使用java.nio.file.Files#ProbeFileContent(path) ,除非您已注册任何其他java.nio.file.spi.FileTypeDetector,否则默认情况下将使用扩展检测器:s
public class Main {
public static void main(String[] argv) throws Throwable {
Path path = Paths.get("c:/test.mp4");
String contentType = Files.probeContentType(path);
System.out.println(contentType);
}
}
将输出:
video/mp4