Java:从与java文件相同的文件夹中读取图像

时间:2015-11-28 18:25:31

标签: java file-io javax.imageio

我的代码可以从与java文件相同的目录中读取图像文件,但是目前我只能在给出entier路径的情况下才能使用它。

picture = new JLabel(new ImageIcon(ImageIO.read(new File("C:\\Users\\...\\ogre.png"))));

图像与java文件位于同一文件夹中。但是,当我尝试"ogre.png"".\\ogre.png"或类似时,它不起作用。

我的问题是:

  1. 我最终将导出到JAR,这会影响创建jar后的那个吗? (我假设是的,因为创建jar不会改变源代码)。

  2. 如何从同一文件夹而不是确切的文件路径中读取文件,例如,在移动包含文件夹的情况下。

1 个答案:

答案 0 :(得分:0)

这是标准方式......(当所有东西都放在罐子里时它会起作用)

URL url = OneOfYourClass.class.getResource("package/pathTo/image/ogre.png");           
ImageIcon image = new ImageIcon(url);

OneOfYourClass是您拥有的课程(可能是主要课程)

package/pathTo/image/是此课程中查找图片的路径