Java獲取文件Content-Type(Mime-Type)


Java獲取文件Content-Type(Mime-Type)

剛好工作中要用到,所以總結一下。推薦使用第一種和第三種,實在不行,也可以去把http://tool.oschina.net/commons上面特定類型對應的mime-type復制下來,放入map什么的去對比。

1、使用JDK1.7自帶方法

import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; public class Test{ public static void main(String[] args){ Path path = Paths.get("E:\\static\\count.mp3"); String contentType = null; try { contentType = Files.probeContentType(path); } catch (IOException e) { e.printStackTrace(); } System.out.println("File content type is : " + contentType); } }

 

2、javax.activation.MimetypesFileTypeMap

import java.io.File; import javax.activation.MimetypesFileTypeMap; public class Test{ public static void main(String[] args){ String contentType = new MimetypesFileTypeMap().getContentType(new File("E:\\static\\count.mp3")); System.out.println(contentType); } } 

 

3、JMimeMagic

Magic parser = new Magic() ; MagicMatch match = parser.getMagicMatch(new File("E:\\static\\count.mp3")); System.out.println(match.getMimeType()) ; 

 

 

4、java.net.*

Tips:貌似mp3音頻文件獲取為null,這種暫時不推薦

import java.net.FileNameMap; import java.net.URLConnection; public class Test { public static void main(String args[]) throws Exception { FileNameMap fileNameMap = URLConnection.getFileNameMap(); String contentType = fileNameMap.getContentTypeFor("E:\\static\\bg.jpg"); System.out.println(contentType); // output : image/jpeg } }


原文鏈接:http://blog.csdn.net/saytime/article/details/51497529


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM