Java中的ImageIO

时间:2015-10-12 00:40:29

标签: java image

我是刚刚开始学习Java的二年级学生。我有这个代码,它不断抛出异常:

try
{
    masterFish = ImageIO.read(getClass().getResource("fish1.gif"));
} 
catch (IOException iOException)
{
    iOException.printStackTrace();
}

有人可以解释fish1.gif部分吗?我应该在某处下载名为fish1.gif的图片吗?

2 个答案:

答案 0 :(得分:1)

请参阅此问题:Loading resources using getClass().getResource()

getClass() getResource()方法将尝试使用类文件(.class扩展名)作为参考点来查找资源。因此,您的文件应位于类文件所在的位置。例如,如果您的类是com.example.MyClass,那么您的" fish1.gif"文件应位于目录<> / src / com / example中。

混合资源和源代码通常被认为是不好的风格,所以你可能想要创建一个目录" resources"在项目的根目录中,将资源放在合适的层次结构中,并以集中的方式访问它们。

答案 1 :(得分:0)

很可能找不到“fish1.gif”。确保在编译代码时,“fish1.gif”与“MAIN CLASS”位于同一目录中。或者不仅仅是“fish1.gif”,你可以专门写一下它在硬盘上的位置...... 示例:“C:/ Users / name /Desktop/fish1.gif”。