在java中读取图像资源文件

时间:2016-02-07 09:11:16

标签: java javax.imageio

我一直在寻找如何解决这个问题已有一段时间了,但我似乎找不到办法。只要它在日食中我就可以读取图像,但是当我输出它时,它是不可能的。我尝试使用InputStream,但由于某种原因抛出了IllegalArgumentException,我做错了什么?

InputStream iconstream = getClass().getResourceAsStream("resources/icon.png");

InputStream pigstream = getClass().getResourceAsStream("resources/pig.png");

这是为了获取资源,这是我阅读它们的地方:

try {
            icon = ImageIO.read(iconstream);
            pig = ImageIO.read(pigstream);
        } catch(IOException e) {
            e.printStackTrace();
            System.err.println(e.getMessage());
        } catch(IllegalArgumentException e) {
            e.printStackTrace();
            System.err.println(e.getMessage());
        }

My file Tree

2 个答案:

答案 0 :(得分:0)

更改

InputStream iconstream = getClass().getResourceAsStream("resources/icon.png");

InputStream iconstream = getClass().getResourceAsStream("/resources/icon.png");

答案 1 :(得分:0)

getClass().getResourceAsStream()查看该类的包。您需要在名称中添加前导/,否则请使用getClass().getClassLoader().getResourceAsStream()