我需要知道没有文件扩展名的文件扩展名?这可以使用java IO API吗?
我在阅读JPG文件时遇到以下异常:
javax.imageio.IIOException: Unsupported Image Type
有没有人有任何想法如何解决这个问题?
当我尝试在Mac OS X或Windows中的普通图像查看器中打开图像时,它可以正常工作。
是否有可能将文件重命名为其他类型且原始类型与扩展名不同?
答案 0 :(得分:4)
您可以使用此代码获取mime类型。
String imageName = "C:\\Documents and Settings\\home\\Desktop\\P092870.jpg";
File input = new File(imageName);
System.out.println("System Type description of " + input.getName() + " is " +
FileSystemView.getFileSystemView().getSystemTypeDescription(input));
System.out.println("Mime Type of " + input.getName() + " is " +
new MimetypesFileTypeMap().getContentType(input));
答案 1 :(得分:0)
您可以使用mime-util库。我的示例代码将获取文件的mime类型。
String imagePath = "filepath";
File file = new File(imagePath);
if (MimeUtil.getMimeDetector(MagicMimeMimeDetector.class.getName()) == null) {
MimeUtil.registerMimeDetector(MagicMimeMimeDetector.class.getName());
}
Collection<MimeType> mimeTypes = MimeUtil.getMimeTypes(file);
for (MimeType mimeType : mimeTypes) {
System.out.println(mimeType.getMediaType());
}