我有以下代码用于遍历目录中的文件并将它们调整为 64x64 像素。
for(File file: friedFiles){
System.out.println(file.getPath());
BufferedImage image = ImageIO.read(file);
Image resize = image.getScaledInstance(64,64, Image.SCALE_DEFAULT);
File resizedFile = new File(path + "\\" + file.getName());
ImageIO.write(convertToBufferedImage(resize), "png", resizedFile);
}
System.out.println("Files finished");
这工作正常,但在此目录中的第 300 个图像后它会中断,它给出的错误是“Caused by: java.io.EOFException: Unexpected end of ZLIB input stream”就行了
BufferedImage image = ImageIO.read(file);
我不确定是什么原因造成的,因为它试图读取的文件是一个有效的图像文件。
编辑:请查看我添加到这个问题的答案,问题是原始文件中的文件头损坏。
UYOU
相关分类