• java读取图片大小属性

    普通类
    • 支持
    • 批判
    • 提问
    • 解释
    • 补充
    • 删除
    • java读取图片大小属性


    经测试下来,一下两种方案针对不同大小的图片所消耗的时间不同
    File file = new File("C:/Documents and Settings/All Users/Documents/My Pictures/示例图片", "Sunset.jpg");


    1.采用ImageReader -- 不论图片大小,基本恒定时间,在100ms左右


    try {
        Iterator readers = ImageIO.getImageReadersByFormatName("jpg");
        ImageReader reader = (ImageReader)readers.next();
        ImageInputStream iis = ImageIO.createImageInputStream(file);
        reader.setInput(iis, true);
        System.out.println("width:"+reader.getWidth(0));
        System.out.println("height:"+reader.getHeight(0));
       } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
       }

    注:这种方法判断图片类型的时候,有的时候会出现问题。不如下面那个好用

    2.采用BufferedImage -- 图片越大,消耗的时间越长,针对百K以下的图片速度较快


    try {
        BufferedImage Bi = ImageIO.read(file);  
        System.out.println("width:"+Bi.getWidth());
        System.out.println("height:"+Bi.getHeight());
       } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
       }

    • 标签:
    • 图片大小
    • 时间
    • java
    • 图片
    • file
    • 采用
    • width
    • bufferedimage
    • imagereader
    • system.out.println
    • catch
    • ioexception
  • 加入的知识群:
    学习元评论 (0条)

    评论为空
    聪明如你,不妨在这 发表你的看法与心得 ~



    登录之后可以发表学习元评论
      
暂无内容~~
顶部