ImageIO.read - >读取PNG图像数据时出错

时间:2013-01-29 10:47:13

标签: java exception zip png javax.imageio

我收到InputStream输入,我想阅读此InputStream

我创建了一个

BufferedImage image = null;

我看了ImageIO

read image = ImageIO.read(input);

此代码适用于JPEG和JPG文件,但是,对于PNG文件,我有这样的错误:

javax.imageio.IIOException: Error reading PNG image data    at
com.sun.imageio.plugins.png.PNGImageReader.readImage(PNGImageReader.java:1308)
    at com.sun.imageio.plugins.png.PNGImageReader.read(PNGImageReader.java:1577)
    at javax.imageio.ImageIO.read(ImageIO.java:1448)    at
javax.imageio.ImageIO.read(ImageIO.java:1352)   at
org.projectsforge.swap.proxy.simulation.DichromacyImageSimulation.handle(DichromacyImageSimulation.java:64)
    at org.projectsforge.swap.proxy.proxy.ProxyServlet$1.execute(ProxyServlet.java:150)
    at org.projectsforge.swap.proxy.proxy.ProxyServlet$1.execute(ProxyServlet.java:1)
    at org.projectsforge.swap.core.handlers.HandlerExecutorManager.execute(HandlerExecutorManager.java:72)
    at org.projectsforge.swap.core.handlers.HandlerContext$1.run(HandlerContext.java:175)
Caused by: java.util.zip.ZipException: invalid distance too far back
    at
java.util.zip.InflaterInputStream.read(InflaterInputStream.java:164)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)   
at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)  
at java.io.BufferedInputStream.read(BufferedInputStream.java:334)   
at java.io.DataInputStream.readFully(DataInputStream.java:195)  
at com.sun.imageio.plugins.png.PNGImageReader.decodePass(PNGImageReader.java:1092)
at com.sun.imageio.plugins.png.PNGImageReader.decodeImage(PNGImageReader.java:1207)
at com.sun.imageio.plugins.png.PNGImageReader.readImage(PNGImageReader.java:1301)
    ... 8 more

我不明白这个错误,特别是因为每次都不会发生这个错误......

0 个答案:

没有答案