如何读取相对路径下的图片
项目资源文件下有一个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); 需要绝对路径