android典型程式碼系列(二十一)------根據檔案字尾名獲得對應的MIME型別
21_根據檔案字尾名獲得對應的MIME型別1 :
import java.io.File;
public class FileType {
/**
* 根據檔案字尾名獲得對應的MIME型別。
*
* @param file
*/
public String getMIMEType(File file) {
String type = "*/*";
String fName = file.getName();
// 獲取字尾名前的分隔符"."在fName中的位置。
int dotIndex = fName.lastIndexOf(".");
if (dotIndex < 0) {
return type;
}
/* 獲取檔案的字尾名 */
String end = fName.substring(dotIndex, fName.length()).toLowerCase();
if (end == "")
return type;
// 在MIME和檔案型別的匹配表中找到對應的MIME型別。
for (int i = 0; i < MIME_MapTable.length; i++) {
if (end.equals(MIME_MapTable[i][0]))
type = MIME_MapTable[i][1];
}
return type;
}
private final String[][] MIME_MapTable = {
// {字尾名,MIME型別}
{ ".3gp", "video/3gpp" },
{ ".apk", "application/vnd.android.package-archive" },
{ ".asf", "video/x-ms-asf" }, { ".avi", "video/x-msvideo" },
{ ".bin", "application/octet-stream" }, { ".bmp", "image/bmp" },
{ ".c", "text/plain" }, { ".class", "application/octet-stream" },
{ ".conf", "text/plain" }, { ".cpp", "text/plain" },
{ ".doc", "application/msword" },
{ ".exe", "application/octet-stream" }, { ".gif", "image/gif" },
{ ".gtar", "application/x-gtar" }, { ".gz", "application/x-gzip" },
{ ".h", "text/plain" }, { ".htm", "text/html" },
{ ".html", "text/html" }, { ".jar", "application/java-archive" },
{ ".java", "text/plain" }, { ".jpeg", "image/jpeg" },
{ ".jpg", "image/jpeg" }, { ".js", "application/x-javascript" },
{ ".log", "text/plain" }, { ".m3u", "audio/x-mpegurl" },
{ ".m4a", "audio/mp4a-latm" }, { ".m4b", "audio/mp4a-latm" },
{ ".m4p", "audio/mp4a-latm" }, { ".m4u", "video/vnd.mpegurl" },
{ ".m4v", "video/x-m4v" }, { ".mov", "video/quicktime" },
{ ".mp2", "audio/x-mpeg" }, { ".mp3", "audio/x-mpeg" },
{ ".mp4", "video/mp4" },
{ ".mpc", "application/vnd.mpohun.certificate" },
{ ".mpe", "video/mpeg" }, { ".mpeg", "video/mpeg" },
{ ".mpg", "video/mpeg" }, { ".mpg4", "video/mp4" },
{ ".mpga", "audio/mpeg" },
{ ".msg", "application/vnd.ms-outlook" }, { ".ogg", "audio/ogg" },
{ ".pdf", "application/pdf" }, { ".png", "image/png" },
{ ".pps", "application/vnd.ms-powerpoint" },
{ ".ppt", "application/vnd.ms-powerpoint" },
{ ".prop", "text/plain" },
{ ".rar", "application/x-rar-compressed" },
{ ".rc", "text/plain" }, { ".rmvb", "audio/x-pn-realaudio" },
{ ".rtf", "application/rtf" }, { ".sh", "text/plain" },
{ ".tar", "application/x-tar" },
{ ".tgz", "application/x-compressed" }, { ".txt", "text/plain" },
{ ".wav", "audio/x-wav" }, { ".wma", "audio/x-ms-wma" },
{ ".wmv", "audio/x-ms-wmv" },
{ ".wps", "application/vnd.ms-works" }, { ".xml", "text/xml" },
{ ".xml", "text/plain" }, { ".z", "application/x-compress" },
{ ".zip", "application/zip" }, { "", "*/*" } };
}
相關文章
- js根據字尾判斷檔案檔案型別的程式碼JS型別
- MIME.json 檔案請求 字尾/響應型別 對照表JSON型別
- 根據副檔名識別檔案型別(轉)型別
- PHP檔案上傳字尾名與檔案型別對照表PHP型別
- nodeJS根據檔案字尾名讀取檔案並返回符合檔案總數NodeJS
- JavaScript獲取檔案字尾名JavaScript
- .net core 獲取檔案MIME型別型別
- javascript實現的獲取檔案字尾名稱程式碼例項JavaScript
- 獲取絕對路徑下的檔名和檔案字尾方法
- .apk檔案的MIME型別APK型別
- 檔案字尾名
- [Java]根據檔案取得Mime Type的各種方法(轉)Java
- sublime設定儲存新檔案時的預設檔案型別(字尾名)型別
- 獲取檔案字尾名的比較好的方法
- 根據api檔案生成程式碼API
- 檔案字尾名的過濾
- 批次修改檔案字尾名
- 如何判斷沒有字尾的檔案型別?型別
- 根據需要的圖表型別選擇echarts對應的series型別型別Echarts
- Linux下的檔案及檔案字尾名Linux
- js 擷取檔案字尾名JS
- linux根據字尾查詢文字Linux
- win10如何修改檔案字尾名 win10修改字尾名的方法Win10
- struts檔案上傳,獲取檔名和檔案型別型別
- Linux 批量修改檔案字尾名Linux
- Linux批量更改檔案字尾名Linux
- shell指令碼擷取字串字尾名,檔名指令碼字串
- 獲取相應副檔名的ContentType型別型別
- win10 更改檔案字尾方法 win10 檔案如何修改字尾名Win10
- 檔案字尾名怎麼顯示 電腦檔案字尾取消隱藏方法
- oracle ebs 根據請求id找到對應trace 檔案Oracle
- 電腦檔案字尾名怎麼顯示?電腦中顯示檔案字尾(副檔名)的設定方法
- 你誤解了Windows的檔案字尾名嗎?Windows
- Linux刪除指定字尾名的檔案Linux
- IIS增加未知MIME型別檔案的下載支援型別
- python-magic:檢測檔案的MIME型別Python型別
- 根據現有 C#程式碼檔案生成擴充套件程式碼檔案的想法C#套件
- 根據身份證號碼獲取性別資訊程式碼例項