android获取文件getMimeType的两种方法

来源:互联网 发布:关于json的面试题 编辑:程序博客网 时间:2024/05/16 06:51

方法1:

import java.util.Locale;private static String getSuffix(File file) {            if (file == null || !file.exists() || file.isDirectory()) {                return null;            }            String fileName = file.getName();            if (fileName.equals("") || fileName.endsWith(".")) {                return null;            }            int index = fileName.lastIndexOf(".");            if (index != -1) {                return fileName.substring(index + 1).toLowerCase(Locale.US);            } else {                return null;            }    }    public static String getMimeType(File file){          String suffix = getSuffix(file);            if (suffix == null) {                return "file/*";            }            String type = MimeTypeMap.getSingleton().getMimeTypeFromExtension(suffix);            if (type != null || !type.isEmpty()) {                return type;            }            return "file/*";}

方法2:

public static String getMimeType(String filePath) {    MediaMetadataRetriever mmr = new MediaMetadataRetriever();    String mime = "text/plain";    if (filePath != null) {         try {             mmr.setDataSource(filePath);             mime = mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_MIMETYPE);         } catch (IllegalStateException e) {    return mime;         } catch (IllegalArgumentException e) {    return mime;} catch (RuntimeException e) {    return mime;}    }    return mime;}




1 0
原创粉丝点击