如何在 Java 中将字节数组转换为图像?

jdbcjava 8object oriented programmingprogramming

Java 提供了 ImageIO 类用于读取和写入图像。将字节数组转换为图像。

  • 通过将要转换的字节数组传递给其构造函数来创建 ByteArrayInputStream 对象。

  • 使用 ImageIO 类的 read() 方法读取图像(通过将 ByteArrayInputStream 对象作为参数传递给它)。

  • 最后,使用 ImageIo 类的 write() 方法将图像写入。

示例

import java.io.ByteArrayOutputStream;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
public class ByteArrayToImage {
   public static void main(String args[]) throws Exception {
      BufferedImage bImage = ImageIO.read(new File("sample.jpg"));
      ByteArrayOutputStream bos = new ByteArrayOutputStream();
      ImageIO.write(bImage, "jpg", bos );
      byte [] data = bos.toByteArray();
      ByteArrayInputStream bis = new ByteArrayInputStream(data);
      BufferedImage bImage2 = ImageIO.read(bis);
      ImageIO.write(bImage2, "jpg", new File("output.jpg") );
      System.out.println("image created");
   }
}

输出

image created


相关文章