Bir sunucudan bayt dizisindeki bir görüntü hakkında veri alan bir program yapıyorum. Bu veriyi 24bit BMP biçimine (jpeg, png, bmp veya 8-24-32bpp olsun) dönüştürüyorum. Öncelikle, onu HD'ye kaydediyorum ve sonra onu bir JLabel'ın İkonuna yüklüyorum.Görüntüyü bayt dizisinden dönüştürme ve görüntüleme
- görüntü yapar: bu hat (ikinci) Bu durumlarda
File imgFile = new File("d:/image.bmp"); BufferedImage image = ImageIO.read(imgFile);
için
java.io.EOFException at javax.imageio.stream.ImageInputStreamImpl.readFully(ImageInputStreamImpl.java:353) at com.sun.imageio.plugins.bmp.BMPImageReader.read24Bit(BMPImageReader.java:1188) at com.sun.imageio.plugins.bmp.BMPImageReader.read(BMPImageReader.java:843) at javax.imageio.ImageIO.read(ImageIO.java:1448) at javax.imageio.ImageIO.read(ImageIO.java:1308)
: Aşağıdaki özel durum almak bazı durumlar olmasına rağmen, mükemmel çalışıyor JLabel içine yüklenmez, ancak bu benim HD
- 'da bulunabilir, dönüşüm uygun değildir, çünkü bir şey "kayıyor"
- resim i bpp, o zaman ben belki resimler çok büyük olduğu sorun düşünülmektedir sandım, bir Word dokümanında italik kullandığınızda gibi
İlk olmakla ı vaka var çalıştığını ve kılıflar her iki öneri için de geçerli değildir. Burada sıkışıp kaldım ve fikirlerden memnun olurum.
Bu görüntüleri oluşturdunuz mu? Düşünebildiğim tek şey, ImageIO'nun desteklemediği BMP formatıyla yaratıldıkları. Belki görüntüleri düzenlemeyi ve tekrar kaydetmeyi denediyseniz. – Piro
Sorun, bazı resimlerin EOF baytlarına sahip olmaması ve bu yüzden "java.io.EOFException" ı almanızın nedeni olduğunu düşünüyorum. Aynı sorunu jpeg formatıyla yaşadım. Dosyanın meta verilerinin dosya uzunluğu hakkında bilgi sahibi olduğunu ve sonuç olarak EOF'nin gerekli olmadığını düşünürseniz, mantıklı olur. Bu gerçek, dosyalarınızın neden HD'nizde bulunduğunu (hatta sanırım açılabileceğini) açıklar ancak java'da istisna alırsınız. – dic19
[this] (http: // stackoverflow.com/questions/12288813/exception-java-awt-color-cmmexception-invalid-image-format-atıldı-ne zaman-resizi/16858161 # 16858161) link, umarım ki 'jpeg' imgeleri ile çalışarak edindiğim tecrübemin bir açıklaması var faydalı. – dic19