public static void main(String[] args) throws Exception {
BufferedImage bufferedImage = ImageIO.read(new FileInputStream("D:\\heima\\2022\\toutiaomianshou\\img\\a.png"));
System.out.println("BufferedImage对象:"+ bufferedImage);
InputStream inputStream = bufferedImageToInputStream(bufferedImage);
Image image = getImageFromInputStream(inputStream);
System.out.println("Image:"+ image);
}
/**
* 将BufferedImage转换为InputStream
* @param image
* @return
*/
public static InputStream bufferedImageToInputStream(BufferedImage image){
ByteArrayOutputStream os = new ByteArrayOutputStream();
try {
ImageIO.write(image, "png", os);
InputStream input = new ByteArrayInputStream(os.toByteArray());
return input;
} catch (IOException e) {
log.error("提示:",e);
}
return null;
}
/**
*
* @param inputStream
* @return 将InputStream转化为Image
* @throws Exception
*/
public static Image getImageFromInputStream(InputStream inputStream) throws Exception {
int n;
byte[] buffer = new byte[4096];
ByteArrayOutputStream output = new ByteArrayOutputStream();
while (-1 != (n = inputStream.read(buffer))) {
output.write(buffer, 0, n);
}
Image image = Image.getInstance(output.toByteArray());
return image;
}