1

jpeg画像のexifを取得しようとしていますが、うまくいきません。最初に BufferedImage を使用して画像を読み取り、それをファイルに変換してから、ここと同じコードを適用します: https://code.google.com/p/metadata-extractor/source/browse/Samples/com/drew/ metadata/SampleUsage.java?name=2.5.1 . 私は何を間違っていますか?JpegSegmentReader.SEGMENT_APP1 が null を返すのはなぜですか?

    File outfile = new File("image.jpg");
    ImageIO.write(imagine, "jpg", outfile);
    try{
            JpegSegmentReader segmentReader = new JpegSegmentReader(outfile);
            byte[] exifSegment = segmentReader.readSegment(JpegSegmentReader.SEGMENT_APP1);
            System.out.println(Arrays.toString(segmentReader.readSegment(JpegSegmentReader.SEGMENT_APP1)));
            byte[] iptcSegment = segmentReader.readSegment(JpegSegmentReader.SEGMENT_APPD);
            Metadata metadata = new Metadata();
            if (exifSegment != null)
                new ExifReader().extract(new ByteArrayReader(exifSegment), metadata);
            if (iptcSegment != null)
                new IptcReader().extract(new ByteArrayReader(iptcSegment), metadata);
            printImageTags(metadata);
        }catch (JpegProcessingException e) {
            System.err.println("error 3a: " + e);
        }
4

1 に答える 1