如何在 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 年 7 月 30 日

19K+ 浏览次数

助力您的 事业

通过完成课程获取认证

开始
广告