public String getfiletype(String file){
File f = new File(file);
AutoDetectReader dr = null;
Tika tika = new Tika(); //创建一个Tika类
//利用Tika的detect方法检测文件的实际类型
System.out.println("filetype:"+tika.detect(file));
return tika.detect(file);
}
public String getrealfiletype(String file) {
InputStream is = null;
BufferedInputStream bis = null;
try {
is = new FileInputStream(new File(file));
bis = new BufferedInputStream(is);
AutoDetectParser parser = new AutoDetectParser();
Detector detector = parser.getDetector();
Metadata md = new Metadata();
md.add(Metadata.RESOURCE_NAME_KEY, file);
MediaType mediaType = detector.detect(bis, md);
return mediaType.toString();//返回的就是文件类型
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
mimetypes mimes
“image/jpeg” “jpg”
“image/jpeg” “jpeg”
“image/png” “png”
“image/webp” “webp”
“application/vnd.ms-excel” “xls”
“application/vnd.openxmlformats-officedocument.spreadsheetml.sheet” “xlsx”
“application/msword” “doc”
“application/vnd.openxmlformats-officedocument.wordprocessingml.document” “docx”
“application/vnd.openxmlformats-officedocument.presentationml.presentation” “pptx”
“application/vnd.ms-powerpoint” “ppt”
“application/pdf” “pdf”
“application/x-rar-compressed” “rar”
“application/zip” “zip”
“application/x-7z-compressed” “7z”
最全的类型,请见:
http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types