gpt4 book ai didi

java - 获取图像的拍摄日期

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:43:41 26 4
gpt4 key购买 nike

我想查找图像的“拍摄日期”而不是“修改日期”或“创建日期”。虽然我在 stackoverflow 上找到了一些链接,但没有人能检索到它。图片格式为:tiff 和 RAW。

使用 javax.imageio,我编写了下面的程序,但它没有打印任何内容。这意味着没有可用的阅读器

        File file = new File( fileName );
ImageInputStream iis = ImageIO.createImageInputStream(file);
Iterator<ImageReader> readers = ImageIO.getImageReaders(iis);
if (readers.hasNext()) {
// pick the first available ImageReader
ImageReader reader = readers.next();
// attach source to the reader
reader.setInput(iis, true);
// read metadata of first image
IIOMetadata metadata = reader.getImageMetadata(0);
String[] names = metadata.getMetadataFormatNames();
int length = names.length;
for (int i = 0; i < length; i++) {
System.out.println( "Format name: " + names[ i ] );
displayMetadata(metadata.getAsTree(names[i]));
}
}

使用核心 java 库,是否有一种方法可以访问“拍摄日期”而不是“创建日期”或“修改日期”。此外,data taken 信息可用,因为我可以从操作系统中的图像属性中看到这一点

编辑:事实证明 readers 迭代器与它无关。即尺寸 0。它只发生在 tiff 和原始图像上。适用于 jpeg

最佳答案

我找不到任何使用 Java 核心库的解决方案。找到一个名为 metadata-extractor 的库哪个完成了工作。

可以找到更多信息 here.

关于java - 获取图像的拍摄日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13559551/

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