当前位置: 代码迷 >> J2SE >> 怎么读取相对路径上的图片
  详细解决方案

怎么读取相对路径上的图片

热度:33   发布时间:2016-04-24 00:37:01.0
如何读取相对路径下的图片
项目资源文件下有一个images文件夹,文件夹里面有一个图片haidao.jpg
如下图: 

如何用代码读取图片????
Java code
private BufferedImage ReadImage(String filePath,int width,int height)        {            File file = new File(filePath);              if (!file.exists())             {                   return null;               }               try             {                Image    imagemain = ImageIO.read(file);                BufferedImage Mainimage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);                Mainimage.getGraphics().drawImage(imagemain.getScaledInstance(width, height,Image.SCALE_SMOOTH), 0, 0, null);                 return Mainimage;            }            catch (IOException e)             {                e.printStackTrace();            }               return null;        }

上面读取文件代码,传绝对路径是可以成功读取图片的,但是传相对路径就找不到图片了。
BufferedImage img=ReadImage("images/haidao.jpg",100,100); //读取不到图片
即使把图片和代码放在一个目录里面,
BufferedImage img=ReadImage("haidao.jpg",100,100); 
还是读取不到图片 。

------解决方案--------------------
new File(filePath);
这个肯定是绝对路径啊,不然这个文件他怎么知道创建呢,楼主在程序中应该也可以得到这文件的绝对路径吧
------解决方案--------------------
Image.FromFile("Image\\video.PNG")
------解决方案--------------------
参照。。。
Image imagemain = ImageIO.read(this.getClass().getResource("/images/haidao.jpg"));
------解决方案--------------------
new File(filePath); 需要绝对路径