1. 程式人生 > >java根據檔案字尾名獲得對應的MIME型別

java根據檔案字尾名獲得對應的MIME型別

/**
* 根據檔案字尾名獲得對應的MIME型別。

* @param file
*/
private 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型別}
{ ".doc", "application/msword" },
{ ".docx",
"application/vnd.openxmlformats-officedocument.wordprocessingml.document" },
{ ".xls", "application/vnd.ms-excel" },
{ ".xlsx",
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" },
{ ".pdf", "application/pdf" },
{ ".ppt", "application/vnd.ms-powerpoint" },
{ ".pptx",
"application/vnd.openxmlformats-officedocument.presentationml.presentation" },
{ ".txt", "text/plain" }, { ".wps", "application/vnd.ms-works" },
{ "", "*/*" } };