ImageIO.read(new FileInputStream(imgPath));加載異常


    ImageIo.read() 讀取圖片時返回Null的解決方法

最近做圖片縮略圖處理,大部分使用java自帶的ImageIO.read( InputStream )都能讀取到圖片,但是總有一小部分jpg圖片無法讀取到,read()方法會返回一個null,無法對這部分圖片處理。

查閱了很多資料,了解到這部分圖片基本上都是webp格式的圖片。這些圖片雖然文件后綴是jpg,但是實際格式是webp,用記事本打開可以看到,如圖。

webp是谷歌2010新出的圖片類型,java無法支持這種格式的圖片,正常的方式讀取就會報空。

添加依賴即可

<webp.version>0.1.6</webp.version>
        <!-- https://mvnrepository.com/artifact/org.sejda.imageio/webp-imageio  兼容webp圖片文件-->
        <dependency>
            <groupId>org.sejda.imageio</groupId>
            <artifactId>webp-imageio</artifactId>
            <version>${webp.version}</version>
        </dependency>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM