最近帮朋友做了个管理图片的小软件,要求实现的功能就是对大量的jpg图片生成缩略图显示,自动计算图片的平方数以便计费。最初感觉从图片读取信息应该是很简单的问题,哪知道还是花了好几天才搞定,杯具啊!
刚开始我调用ImageIcon来生成缩略图,才发现对于几百张图片来说这是不可能完成任务,google一把才发现,jpg图片中的exif中会包括缩略图和dpi,但是当我使用JpegMetadataReader类去读dpi的时候竟然发现有时跟windows的读取的结果不一样,要知道程序这东西就怕“有时出问题” 这种情况。走到绝处时竟然下了exif的标准文档来看,不过还好最后发现了Sanselan类可以弥补JpegMetadataReader的不足,长话短说直接看代码吧,本代码并不完美,望体谅。
JpegMetadataReader 来自 metadata-extractor-2.3.1.jar
Sanselan 来自 sanselan-0.97-incubator.jar
该代码中很多局部变量的申明没有贴出来,希望没有影响到你的阅读。
String [] temp = file.getName().split("\\.");
St