我正在设置一个JLabel来显示一个图标。
public Icon getIcon(String type) throws IOException
{
String avatar = "Academic.jpg";
switch(type)
{
case"Academic": avatar ="Academic.jpg"; break;
case"Alchemist": avatar ="Alchemist.jpg"; break;
case"Assassin": avatar ="Assassin.jpg"; break;
}
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
InputStream input = classLoader.getResourceAsStream(avatar);
Image logo = ImageIO.read(input);
Icon icon = new ImageIcon(logo);
return icon;
}
当“avatar”包含字符串“Pic.jpg”时,“input”在第3行仍然为null。 我的资源文件夹在src文件夹中?我做错了什么吗? eclipse如何知道如何找到图像?
答案 0 :(得分:0)
您只是传递没有任何路径的文件名,因此除非该文件位于项目的根目录,否则将无法找到类路径。您需要添加文件所在位置的路径详细信息。这听起来至少从以下开始:
/src/resources//Academic.jpg