Java 获取图像的拍摄日期

Java 获取图像的拍摄日期,java,image,Java,Image,我想查找图像的“拍摄日期”,而不是“修改日期”或“创建日期”。虽然我在stackoverflow上找到了一些链接,但没有人能够检索到它。图像格式为:tiff和RAW 使用javax.imageio,我编写了下面的程序,但它不打印任何内容。这意味着没有可用的读卡器 File file = new File( fileName ); ImageInputStream iis = ImageIO.createImageInputStream(file);

我想查找图像的“拍摄日期”,而不是“修改日期”或“创建日期”。虽然我在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]));
            }
        }
File File=新文件(文件名);
ImageInputStream iis=ImageIO.createImageInputStream(文件);
迭代器阅读器=ImageIO.getImageReaders(iis);
if(readers.hasNext()){
//选择第一个可用的ImageReader
ImageReader=readers.next();
//将源附加到读取器
reader.setInput(iis,true);
//读取第一个图像的元数据
IIOMetadata元数据=reader.getImageMetadata(0);
字符串[]名称=元数据。getMetadataFormatNames();
int length=names.length;
for(int i=0;i
使用核心java库,是否有一种方法可以访问“date Take”,而不是“date created”或“date modified”。 此外,从操作系统中的图像属性可以看出,获取的
数据
信息也可用


编辑:原来
阅读器
迭代器与之无关。i、 e.e尺寸为0。这只适用于tiff和原始图像。可以很好地使用jpeg

我找不到任何使用java核心库的解决方案。找到一个名为的库,该库执行此任务


可以找到更多信息

您是否检查了元数据树以查看是否可以找到日期?发布您目前发现的内容。是的。它什么也不印。如果图像是jpeg格式的,它会打印压缩等信息,但不会打印日期。可能会将读取器设置为忽略元数据:
System.out.println(reader.isIgnoringMetadata())无需在图像中显示元数据。你不能指望它就在那里。我上次检查时,Java核心API在图像交互的大多数方面只支持JPEG和PNG。这可能就是为什么jpeg图像成功,而tiff和raw文件失败的原因。你能分享一个示例代码吗?