首页 > 解决方案 > 读取外部图像

问题描述

我环顾四周并尝试了许多修复程序,但似乎找不到一个有效的修复程序。

我正在制作一个简单的青蛙游戏,我最初将所有精灵都加载到项目目录中,例如img/spritename.png

image = ImageIO.read(getClass().getResourceAsStream("img/map.png"));

或者

ImageIO.read(getClass().getResource(sprite));

一切正常,花花公子,但我把我所有的图像都移到了一个外部目录,这样我就可以为它创建一个安装程序。

"C:\Program Files\DIR\img\"并且所有精灵不再加载。

我认为可以修复它的代码,但没有

    BufferedImage image = null;

    File dir = new File(Config.imgDir + "map.png");
    try {
        image = ImageIO.read(dir);
    } catch (IOException e) {
        e.printStackTrace();
    }

    if (image == null) {
        return;
    }
}

配置代码:

public static String imgDir = "C:/Program Files/EmulousSoft/Frogger/img/";

有没有人有任何想法?我确信这很简单,但是每次我尝试不同的方法时,我都会得到"Value cannot be a null","cannot find directory"或 this。

标签: javajavax.imageio

解决方案


推荐阅读