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;
    }
相关推荐
Escalating_xu5 小时前
【C 语言】深入理解指针(5):sizeof、strlen、数组名语义与指针笔试题全解析
java·c语言·开发语言
HEJOO95 小时前
Linux 设备驱动系列——使用全局工作队列
java·linux·算法
谢亮_vipxieliang5 小时前
Go Channel 高级模式——从底层原理到扇出扇入实战
java·数据库·golang
Code_Solitude5 小时前
c语言:递归
java·c语言·算法
Nebula_g5 小时前
JavaSE加强:Stream流
java·开发语言·windows·stream·javase·流
估值探索者5 小时前
【Python量化系统工程实战 #08】从脚本到生产:量化系统上线 checklist 的最小闭环
java·开发语言·jvm·python·数据挖掘·数据·股票数据api接口
Wang's Blog5 小时前
Java框架 SpringCloud 快速入门: Nacos 环境隔离
java·开发语言·spring cloud
万年咸鱼5 小时前
解决C语言的内存释放机制
java·c语言·python
一木 之林6 小时前
DeepSeek Agent 开发(三)
java·大数据·linux
denlaku6 小时前
JDK 10 新特性详解
java·开发语言