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;
    }
相关推荐
浪扼飞舟2 分钟前
C#(多线程和同步异步)
java·开发语言
hanqunfeng8 分钟前
(三十三)Redisson 实战
java·spring boot·后端
2301_780669868 分钟前
字符集及其编码、解码操作、IO流分类
java·开发语言
计算机毕设指导611 分钟前
基于微信小程序的运动场馆服务系统【源码文末联系】
java·spring boot·微信小程序·小程序·tomcat·maven·intellij-idea
冰暮流星23 分钟前
javascript的switch语句介绍
java·前端·javascript
有梦想的攻城狮23 分钟前
Java中的Double类型的存在精度丢失详解
java·开发语言·bigdecimal·double
m0_7482495441 分钟前
Java 语言提供了八种基本类型【文123】
java·开发语言·python
移幻漂流1 小时前
Kotlin 如何解决 Java 的核心痛点:现代语言特性的深度剖析
java·python·kotlin
leikooo1 小时前
ShardingSphere 下更新分片键导致的失败问题分析与解决
java·spring·apache
a程序小傲1 小时前
中国邮政Java面试被问:Netty的FastThreadLocal优化原理
java·服务器·开发语言·面试·职场和发展·github·哈希算法