try { // Extract metadata. Metadata metadata = ImageMetadataReader.readMetadata(new BufferedInputStream(new ByteArrayInputStream(imageData)), imageData.length); // Log each directory. for(Directory directory : metadata.getDirectories()) { Log.d("LOG", "Directory: " + directory.getName()); // Log all errors. for(String error : directory.getErrors()) { Log.d("LOG", "> error: " + error); } // Log all tags. for(Tag tag : directory.getTags()) { Log.d("LOG", "> tag: " + tag.getTagName() + " = " + tag.getDescription()); } } } catch(Exception e) { // TODO: handle exception }
Metadata metadata = ImageMetadataReader.readMetadata(file); Iterable<Directory> directories = metadata.getDirectories(); Iterator<Directory> iterator = directories.iterator(); while(iterator.hasNext()) { Directory dir = iterator.next(); Collection<Tag> tags = dir.getTags(); for(Tag tag: tags) { System.out.println(tag.getTagName() + " " + tag.getDescription() + " " + tag.getTagTypeHex()); } }
Metadata header; try { ByteArrayInputStream bais= new ByteArrayInputStream(data); ExifReader reader = new ExifReader(bais); header = reader.extract(); Iterator<Directory> iter = header.getDirectoryIterator(); while(iter.hasNext()){ Directory d = iter.next(); Iterator<Tag> iterTag = d.getTagIterator(); while(iterTag.hasNext()){ Tag t = iterTag.next(); Log.e("DEBUG", "TAG: " + t.getTagName() + " : " + t.getDescription()); } } } catch (JpegProcessingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (MetadataException e) { // TODO Auto-generated catch block e.printStackTrace(); }