gpt4 book ai didi

java - 将字节转换为图像

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:46:07 24 4
gpt4 key购买 nike

为什么即使 o 有数据,bImageFromConvert 也会变成 null?

BufferedImage img = null;
byte[] s;
ArrayList<Byte> f;
InputStream in;
BufferedImage bImageFromConvert;

public void print(ArrayList<Byte> lst) throws IOException {
byte[] o = new byte[lst.size()];
for (int i = 0; i < lst.size(); i++) {
o[i] = lst.get(i);
}
in = new ByteArrayInputStream(o);
bImageFromConvert = ImageIO.read(in);

最佳答案

好的,基于评论中的讨论:

您有一个字节流,表示每个像素的 RGB。

ImageIO.read() 根据其 Javadoc 的说法,“返回一个 BufferedImage 作为使用从当前注册的 ImageReader 中自动选择的 ImageReader 解码提供的 InputStream 的结果。”。因此,ImageIO.read() 通常不期望 RGB 像素字节,而是 JPG 或 PNG 编码。由于它无法将字节流识别为有效的图像编码,因此它返回 null。

然后在 SO 上给出了关于如何从 RGB 像素字节获取图像的可能解决方案:How to convert array of bytes into Image in Java SE

关于java - 将字节转换为图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27113877/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com