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


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

更新于: 2019-07-30

19K+ 浏览量

开启你的 职业生涯

完成课程后取得认证

立即开始
广告