Поскольку MemoryCacheImageOutputStream
реализует ImageInputStream
, вы можете просто использовать его в качестве входного потока для ImageReader
. Таким образом, вы получите что-то вроде этого (очень простое, не проверенное):
public BufferedImage readImage(MemoryCacheImageOutputStream input) {
ImageInputStream is = input;
ImageReader decoder = ImageIO.getImageReadersByFormatName("JPEG").next();
decoder.setInput(is);
BufferedImage bi = decoder.read(0);
return bi;
}