java 获取图片的宽高

博客引用处(以下内容在原有博客基础上进行补充或更改,谢谢这些大牛的博客指导):

通过java获取图片的宽高

获取本地文件的图片尺寸:

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
  
/**
 * 通过java获取图片的宽和高
 * @author sunlightcs
 * 2011-6-1
 * http://hi.juziku.com/sunlightcs/
 */
public class ImageTools {
      
    /**
     * 获取图片宽度
     * @param file  图片文件
     * @return 宽度
     */
    public static int getImgWidth(File file) {
        InputStream is = null;
        BufferedImage src = null;
        int ret = -1;
        try {
            is = new FileInputStream(file);
            src = javax.imageio.ImageIO.read(is);
            ret = src.getWidth(null); // 得到源图宽
            is.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return ret;
    }
      
      
    /**
     * 获取图片高度
     * @param file  图片文件
     * @return 高度
     */
    public static int getImgHeight(File file) {
        InputStream is = null;
        BufferedImage src = null;
        int ret = -1;
        try {
            is = new FileInputStream(file);
            src = javax.imageio.ImageIO.read(is);
            ret = src.getHeight(null); // 得到源图高
            is.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return ret;
    }
    

获取网络图片的尺寸:

BufferedImage sourceImg=ImageIO.read(new URL(strSrc).openStream());

sourceImg.getWidth();

sourceImg.getHeight();