可以使用 Java 内置的 MIME 类型映射表来获取文件后缀对应的 MIME 类型。具体实现代码如下:

import java.util.HashMap;
import java.util.Map;

public class MimeTypeUtils {
    
    private static final Map<String, String> MIME_TYPES = new HashMap<String, String>() {{
        put('csv', 'text/csv');
        put('doc', 'application/msword');
        put('docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document');
        put('gif', 'image/gif');
        put('jpeg', 'image/jpeg');
        put('jpg', 'image/jpeg');
        put('pdf', 'application/pdf');
        put('png', 'image/png');
        put('ppt', 'application/vnd.ms-powerpoint');
        put('pptx', 'application/vnd.openxmlformats-officedocument.presentationml.presentation');
        put('txt', 'text/plain');
        put('xls', 'application/vnd.ms-excel');
        put('xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
        put('zip', 'application/zip');
    }};

    /**
     * 根据文件后缀获取对应的 MIME 类型
     *
     * @param fileExtension 文件后缀,如 .csv
     * @return MIME 类型,如 text/csv
     */
    public static String getMimeType(String fileExtension) {
        return MIME_TYPES.getOrDefault(fileExtension.toLowerCase(), 'application/octet-stream');
    }
}

使用方法如下:

String mimeType = MimeTypeUtils.getMimeType('.csv');
System.out.println(mimeType); // 输出 text/csv
Java 获取文件后缀对应的 MIME 类型

原文地址: https://www.cveoy.top/t/topic/oeur 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录