Java判断文件是否是图片

java 复制代码
private boolean checkFile(MultipartFile file) throws IOException {
    String imageType = getImageType(ImageIO.createImageInputStream(file.getInputStream()));
    return !StringUtils.isEmpty(imageType);
}
java 复制代码
/**
     * 获取图片类型,图片类型返回图片格式,例如JPEG
     * 非图片类型返回null
     *
     * @param inputStream
     * @return
     * @throws IOException
     */
    private static String getImageType(ImageInputStream inputStream) throws IOException {
        final Iterator<ImageReader> imageReaders = ImageIO.getImageReaders(inputStream);
        if (imageReaders.hasNext()) {
            final ImageReader imageReader = imageReaders.next();
            return imageReader.getFormatName();
        }
        return null;
    }
相关推荐
池️鱼3 分钟前
Maven 详解:从入门到实践
java·maven·intellij-idea
无心水8 分钟前
【java开发常见错误】5、HTTP调用避坑指南:超时、重试、并发,一个都不能少
java·开发语言·后端·http·架构师·http调用·后端开发错误
iPadiPhone13 分钟前
Java 泛型与通配符全链路解析及面试进阶
java·开发语言·后端·面试
Coder_Boy_18 分钟前
分布式系统“三高”与数据一致性核心实践(基于实操梳理)
java·jvm·spring boot·分布式·微服务·性能优化
青衫客3623 分钟前
Excel 模板解析实践:基于 Apache POI 的结构化 Excel 解析方案
java·excel
liuyao_xianhui28 分钟前
动态规划_简单多dp问题_打家劫舍_打家劫舍2_C++
java·开发语言·c++·算法·动态规划
小鸡脚来咯32 分钟前
SQL表连接
java·开发语言·数据库
QC班长39 分钟前
如何进行接口性能优化?
java·linux·性能优化·重构·系统架构
聆风吟º40 分钟前
直击复杂 SQL 瓶颈:金仓基于代价的连接条件下推技术落地
java·数据库·sql·kingbasees
兆子龙2 小时前
ahooks useMemoizedFn:解决 useCallback 的依赖地狱
java·javascript