使用javax.imageio读取jpeg或gif元数据

问题描述 投票:0回答:1

我想修改某些类型的图像(png,jpeg或gif)的元数据,我找到了一个代码,该代码非常适用于haraldK提供的topic上的PNG图像。当我尝试在jpg图像上运行时,它会抛出此错误:javax.imageio.IIOException:JFIF APP0必须是SOI之后的第一个标记。到达线路IIOImage image = reader.readAll(0, null);时会抛出错误

我该怎么做才能让这个工作?

提前感谢您的回答。

java png jpeg gif javax.imageio
1个回答
0
投票

您遇到的问题是JPEG标准没有定义文件格式。出现了几种文件格式。例如。 JFIF。 EXIF。 SPIFF。这些格式以不同方式表示元数据。显然,您尝试使用的库仅支持JFIF文件格式。显然,当您拥有不同格式的文件(可能是EXIF)时,您的库仅支持JFIF格式。

因此,您需要一个支持您的文件格式的库,或者您需要修改您必须使用的文件格式库。这可能是一个相当大的变化。

© www.soinside.com 2019 - 2024. All rights reserved.