gpt4 book ai didi

java - JPEGMetadata 无法解析为类型

转载 作者:搜寻专家 更新时间:2023-11-01 01:00:46 24 4
gpt4 key购买 nike

我正在开发一个程序,该程序本质上将成为专门用于 JPEG 图像的 EXIF 数据压模

GUI 将由一个搜索框、一个加载按钮和一个显示 EXIF 数据的显示框组成。但是我遇到了读者的问题:

public class MetaRead {
public String readCustomData(byte[] imageData, String key) throws IOException{
ImageReader imageReader = ImageIO.getImageReadersByFormatName("JPEG").next();

imageReader.setInput(ImageIO.createImageInputStream(new ByteArrayInputStream(imageData)), true);

// read metadata of first image
IIOMetadata metadata = imageReader.getImageMetadata(0);

//this cast helps getting the contents

JPEGMetadata JPEGmeta = (JPEGMetadata) metadata;
NodeList childNodes = JPEGmeta.getStandardTextNode().getChildNodes();

for (int i = 0; i < childNodes.getLength(); i++) {
Node node = childNodes.item(i);
String keyword = node.getAttributes().getNamedItem("keyword").getNodeValue();
String value = node.getAttributes().getNamedItem("value").getNodeValue();
if(key.equals(keyword)){
return value;
}
}
return null;
}
}

我在 {JPEGMetadata JPEGmeta = (JPEGMetadata metadata;} "JPEGMetadata cannot be resolved to a type"

处收到错误

原始代码是针对 PNG 的,因此我使用查找/替换将所有 PNG 替换为 JPEG。

最佳答案

好的,好的。我不知道如何在不直言不讳的情况下解释这一点。

在编程中,您不能只是将对象的名称 PNGMetadata 更改为 JPEGMetadata 并期望它能正常工作。

你看,对象 PNGMetadata 被开发用于且仅用于 PNG 图像。您不能只是将名称更改为 JPEG 并期望它能正常工作。

如果您需要处理 JPEG 的内容,我可以推荐一个库来读取 JPEG 元数据。请参阅下面的链接。

https://drewnoakes.com/code/exif/

关于java - JPEGMetadata 无法解析为类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27996289/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com