【发布时间】:2015-05-23 10:17:55
【问题描述】:
我想知道是否有人可以提供帮助?我一直在开发一个 java 应用程序,它在 jframe 上显示来自磁盘的图像。 使用 netbeans,我在我的项目中创建了一个名为 images 的 java 包,并将图像存储在该包中。首先,如果我希望他们与应用程序一起发布,我应该这样做吗?
我有以下功能来读取图像:
Image readImg(String file)
{
Image image = null;
try {
File imgFile = new File(file);
image = ImageIO.read(imgFile);
} catch (IOException e) {
// System.out.println("Can not Display Image");
e.printStackTrace();
}
if (image != null){
return image;
} else{
return null;
}
}
我的问题是我无法计算出要传递给函数的相对文件路径。我有图像显示这样调用它:
Image headerImg = readImg("C:\\Users\\D@nb0y\\Documents\\NetBeansProjects\\GiftAidApp\\src\\images\\galogo.png");
显然,如果应用程序在任何其他设备上运行,这将完全崩溃。谁能告诉我如何使这段代码可移植?
非常感谢
【问题讨论】:
-
使用getResources方法
-
对不起,Thusitha 我不明白哪个类的 getResources 方法我注意到 imageIO 似乎没有该名称的方法?
标签: java netbeans relative-path javax.imageio