獲取圖片尺寸

1 /** 2 * 3  */ 4 package com.b510; 5 6 import java.awt.image.BufferedImage; 7 import java.io.File; 8 import java.io.FileInputStream; 9 import java.io.FileNotFoundException;10 import java.io.IOException;11 import java.util.Date;12 import java.util.Iterator;13 14 import javax.imageio.ImageIO;15 import javax.imageio.ImageReader;16 import javax.imageio.stream.ImageInputStream;17 18 public class ImageUtil {19 20     /**21     * 源圖片路徑名稱如:c:/1.jpg22      */23     private String srcpath = "e:/pool.jpg";24 25     public ImageUtil() {26 27    }28 29     public static void main(String[] args) throws Exception {30         ImageUtil util = new ImageUtil();31        util.getImageSizeByImageReader(util.getSrcpath());32        util.getImageSizeByBufferedImage(util.getSrcpath());33    }34 35     /**36     * 使用ImageReader獲取圖片尺寸37     * 38     * @param src39     *            源圖片路徑40      */41     public void getImageSizeByImageReader(String src) {42         long beginTime = new Date().getTime();43         File file = new File(src);44         try {45             Iterator<ImageReader> readers = ImageIO.getImageReadersByFormatName("jpg");46             ImageReader reader = (ImageReader) readers.next();47             ImageInputStream iis = ImageIO.createImageInputStream(file);48             reader.setInput(iis, true);49             System.out.println("width:" + reader.getWidth(0));50             System.out.println("height:" + reader.getHeight(0));51         } catch (IOException e) {52            e.printStackTrace();53        }54         long endTime = new Date().getTime();55         System.out.println("使用[ImageReader]獲取圖片尺寸耗時:[" + (endTime - beginTime)+"]ms");56    }57 58     /**59     * 使用BufferedImage獲取圖片尺寸60     * 61     * @param src62     *            源圖片路徑63      */64     public void getImageSizeByBufferedImage(String src) {65         long beginTime = new Date().getTime();66         File file = new File(src);67         FileInputStream is = null;68         try {69             is = new FileInputStream(file);70         } catch (FileNotFoundException e2) {71            e2.printStackTrace();72        }73         BufferedImage sourceImg = null;74         try {75             sourceImg = javax.imageio.ImageIO.read(is);76             System.out.println("width:" + sourceImg.getWidth());77             System.out.println("height:" + sourceImg.getHeight());78         } catch (IOException e1) {79            e1.printStackTrace();80        }81         long endTime = new Date().getTime();82         System.out.println("使用[BufferedImage]獲取圖片尺寸耗時:[" + (endTime - beginTime)+"]ms");83    }84 85     public String getSrcpath() {86         return srcpath;87    }88 89     public void setSrcpath(String srcpath) {90         this.srcpath = srcpath;91    }92 93 }java

相關文章
相關標籤/搜索