这是一个小巧的相片Exif信息读取和修改的Java库。它同时是一个可执行程序,但代码是开源的,可以通过看代码提取出接口自己调用。
一个读取Exif和修改拍照日期的例子:
import java.util.Map; import java.util.SortedMap; import net.sourceforge.jheader.App1Header; import net.sourceforge.jheader.JpegHeaders; import net.sourceforge.jheader.TagValue; import net.sourceforge.jheader.App1Header.Tag; public class Main { public static void main(String[] args) throws Exception { String filename = "IMG_1062.JPG"; JpegHeaders jpegHeaders = new JpegHeaders(filename); // EXIF App1Header exifHeader = jpegHeaders.getApp1Header(); // 遍历显示EXIF SortedMap tags = exifHeader.getTags(); for (Map.Entry entry : tags.entrySet()) { System.out.println(entry.getKey() + "[" + entry.getKey().name + "]:" + entry.getValue()); } // 修改EXIF的拍照日期 exifHeader.setValue(Tag.DATETIMEORIGINAL, "2007:11:04 07:42:56"); // 保存 jpegHeaders.save(true); } }
首先,Exif信息是什么? 也不废话,百度百科说的很清楚: http://baike.baidu.com/link?url=q7uOXmyvU-3HUGt_FwL7MWGJ_sFWj6qo0HQeCV-mC0F5cYeexpIyAEwAlfkgqp-IjDn2D5oepItgW_dXj3N0OK 我的理解呢Exif信息就是照片被拍摄的时候相机的焦距,物距,曝光值等信息,这信息或许对于我们浏览照片不