L'image projet Magick dispose d'installations pour identifier l'image et il y a un wrapper Java pour Image Magick appelé JMagick que je pense que vous pouvez envisager au lieu de réinventer la roue:
http://www.jmagick.org
J'utilise image Magick tout le temps, y compris son « identifier » caractéristique de la ligne de commande et il n'a jamais réussi à identifier une image.
À l'époque où j'avais absolument besoin de cette fonctionnalité et JMagick n'existait pas encore, je l'habitude Runtime.exec()
commande identify
ImageMagick de Java et cela a fonctionné parfaitement.
De nos jours, l'existence de JMagick n'est probablement plus nécessaire (mais je n'ai pas encore essayé JMagick).
Notez qu'il donne beaucoup plus que le format, par exemple:
$ identify tmp3.jpg
tmp3.jpg JPEG 1680x1050 1680x1050+0+0 DirectClass 8-bit 293.582kb
$ identify tmp.png
tmp.png PNG 1012x900 1012x900+0+0 DirectClass 8-bit 475.119kb
Peut-être en utilisant 'ImageIcon.getIconWidth()' serait aussi directement travailler? Il retourne au moins '-1' si l'image n'a pas été chargée avec succès. – Pooven