8

「変更日」や「作成日」ではなく、画像の「撮影日」を検索したい。私はstackoverflowでいくつかのリンクを見つけましたが、誰もそれを取得できませんでした。画像形式はtiffとRAWです。

を使用しjavax.imageioて、以下のプログラムを作成しましたが、何も出力されません。つまり、利用可能なものはありませreader

        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 takenOSの画像プロパティからわかるように情報が利用可能です

編集:readersイテレータには何もありません。ieeサイズ0。これは、tiffおよびraw画像でのみ発生します。jpegでうまく機能します

4

1 に答える 1

10

Javaコアライブラリを使用した解決策が見つかりませんでした。その仕事をするmetadata-extractorと呼ばれるライブラリを見つけました。

詳細については、こちらをご覧ください。

于 2012-11-26T06:52:16.767 に答える