import javax.swing.*; import java.awt.image.BufferedImage; import java.io.FileInputStream; import java.io.IOException; public class ImageTest { static int width = 100; static int height = 100; public static void main(String[] args) { BufferedImage img = new BufferedImage(ImageTest.width, ImageTest.height, BufferedImage.TYPE_3BYTE_BGR); try (FileInputStream f = new FileInputStream("../Coloriage/funny.bin")) { for (int i = 0; i < width * height; i++) { int r = f.read(); int g = f.read(); int b = f.read(); int rgb = r; rgb <<= 8; rgb |= g; rgb <<= 8; rgb |= b; img.setRGB(i % width, i / width, rgb); } try { f.close(); } catch (IOException e) { System.out.println(e); } } catch (IOException e) { System.out.println(e); } JFrame f = new JFrame("Image"); f.setSize(width + 50, height + 50); f.setLocation(100, 100); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.add(new ImagePanel(img)); f.setVisible(true); } }