读取 BufferedImage 时出现 FileNotFoundException

FileNotFoundException when reading a BufferedImage

我正在尝试裁剪从表单上传中收到的图像。在我裁剪它之前我保存它,然后我再次检索它作为 BufferedImage(因为我不知道如何将一部分变成缓冲图像)。然后我裁剪了这张图片,但是当我再次尝试保存它时,我得到了 java.io.FileNotFoundException (access denied)

第一张图片保存正确,我尝试拉回时出现异常。

是否可以将我的部分变成缓冲图像然后保存?而不是做双重工作。或者我下面的代码有一些修复。

String savePath = "path";

File fileSaveDir = new File(savePath);
if (!fileSaveDir.exists()) {
    fileSaveDir.mkdir();
}

for (Part part : request.getParts()) {
        //functionality to ormit non images

        String fileName = extractFileName(part);                                            

        part.write(savePath + "/" + fileName);

        String imagePath = savePath + "/" + fileName;

        BufferedImage img = null;
        try {

            img = ImageIO.read(new File(imagePath));

            img = img.getSubimage(0, 0, 55, 55);

            ImageIO.write(img, "jpg", fileSaveDir);

        } catch (IOException e) {
            System.out.println(e);
        }                                               
} 

ImageIO.write((RenderedImage im, String formatName, File output));

Parameters:
im a RenderedImage to be written.
formatName a String containg the informal name of the format.
output a File to be written to.

根据文档输出文件参数是文件对象,它将在您传递父目录文件对象的地方写入图像。