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;
    }
相关推荐
右耳朵猫AI16 分钟前
Java周刊2026W38 | Micronaut 修补三漏洞、JDK 27 提速 54%、Jetty 修复抖动测试
java·后端·spring
事已至此先睡覺吧16 分钟前
第二篇:Java 基础语法:变量、数据类型、运算符与类型转换
java
Wang's Blog27 分钟前
Java 项目实战: 外卖平台-后台退出功能与首页iframe架构
java·服务器·redis
Wang's Blog28 分钟前
Java 项目实战: 外卖平台-软件开发流程与项目整体介绍
java·服务器·redis
她说..29 分钟前
常见设计模式-模板方法模式
java·spring·设计模式·springboot
步行cgn29 分钟前
BeanFactory 与 FactoryBean 的区别:面试深度解析
java·后端·spring
IT 行者36 分钟前
JDK 27 正式发布:内存、安全、并发三路齐发
java
伍一513 小时前
hiprint-spring-boot打印组件介绍
java·hiprint
Wang's Blog9 小时前
Java 接入Redis: 服务启动停止与后台运行配置
java·服务器·redis
此时不提桶,更待何时9 小时前
01-04-B-垃圾回收面试与生产事故实战
java·jvm·面试