bufferedimage转byte数组
时间: 2023-08-08 22:11:07 浏览: 98
你可以使用Java中的ByteArrayOutputStream来将BufferedImage转换为byte数组。以下是一个示例代码:
```java
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
try {
BufferedImage image = ImageIO.read(Main.class.getResourceAsStream("image.jpg"));
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(image, "jpg", baos);
baos.flush();
byte[] imageBytes = baos.toByteArray();
baos.close();
// 可以在这里使用imageBytes进行进一步处理
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在上面的示例中,首先通过ImageIO类的`read`方法将图像文件读入BufferedImage对象。然后,创建一个ByteArrayOutputStream对象`baos`,并使用ImageIO的`write`方法将BufferedImage对象写入该流中。通过调用`toByteArray`方法,将流中的数据转换为byte数组`imageBytes`。
请注意,上述代码使用了一个名为"image.jpg"的图像文件作为示例。你需要根据实际情况更改图像文件的路径或名称。
阅读全文