Я читаю файл изображения в сервлет из http-запроса. Я хочу обрезать его как квадрат и записать его в файл. Я могу достичь этого с помощью следующего кода, но я использую временный файл, чтобы сначала записать исходное изображение. Как я могу сделать это без использования временного файлаОбрезать загруженное изображение с помощью Java
File tempFile = new File(saveFileFrameTemp);
fileOut = new FileOutputStream(tempFile);
fileOut.write(dataBytes, startPos, (endPos - startPos));
fileOut.flush();
fileOut.close();
BufferedImage fullFrame = ImageIO.read(tempFile);
int height = fullFrame.getHeight();
int width = fullFrame.getWidth();
if (height > width)
ImageIO.write(fullFrame.getSubimage(0, (height-width)/2, width, width), "jpg", new File(saveFileFrame));
else
ImageIO.write(fullFrame.getSubimage((width-height)/2, 0, height, height), "jpg", new File(saveFileFrame));
tempFile.delete();
Thats OK все, что я хочу не создать временный файл и дополнительные IO диска –