2014-04-23 58 views
0

我寫了下面的Java類如何在java中使用intelij思想獲取圖像的寬度和高度?

public class main { 

    private static BufferedImage image; 

    private static String srcImageName = "HeatMap.png"; 

    public static void main(String[] args) { 

     initializeImage(); 
     System.out.println(image.getWidth()); 

    } 

    private static void initializeImage(){ 

     image = null; 
     try { 
      image = ImageIO.read(new File(srcImageName)); 
     } catch (IOException e) { 
      System.out.println("Cannot read image "+ srcImageName); 
      //e.printStackTrace(); 
     } 
    } 
} 

現在我的文件結構如下所示:

  • 的main.java文件
  • 的HeatMap.png文件

兩個這些都在同一個文件夾中。問題是,當我運行該程序,我得到以下回應:

無法讀取圖像HeatMap.png

這告訴我,他沒有看到我想不通爲什麼圖像。

請幫忙。

回答

1

這兩個都在同一個文件夾中。嘗試

BufferedImage image = ImageIO.read(getClass().getResourceAsStream("HeatMap.png")); 

int w = image.getWidth(); 

int h = image.getHeight(); 

你可以嘗試其他選項也。閱讀評論。

// Read from same package 
ImageIO.read(getClass().getResourceAsStream("c.png")); 

// Read from absolute path 
ImageIO.read(new File("E:\\SOFTWARE\\TrainPIS\\res\\drawable\\c.png")); 

// Read from images folder parallel to src in your project 
ImageIO.read(new File("images\\c.jpg")); 
+0

這是我一直在尋找的解決方案。謝謝。 – ciprianr

相關問題