0

我有以下项目树:

在此处输入图像描述

我可以使用以下命令访问路径中的 290.gif 文件:Java GUI/src/dk/resources/290.gif

this.getClass().getResource("/dk/resources/290.gif")

但我无法使用以下命令访问路径中的 290.gif 文件:Java GUI/resources2/290.gif

this.getClass().getResource("/resources2/290.gif")

我正在尝试从 HelloWorldFrame.java 类访问 290.gif 文件。我想访问路径中的 290.gif 文件:Java GUI/resources2/290.gif

我究竟做错了什么?

4

3 回答 3

4

您已将srcresources2目录声明为Eclipse 中的源文件夹。当 Eclipse 构建您的应用程序时,它会将资源复制到该build文件夹​​,因此:

  • dk.resources 中的文件可通过以下方式访问/dk/resources/290.gif
  • 文件resources2 中的文件不在任何包中,可以通过以下方式访问/290.gif

如果您希望通过 访问该文件,则在该文件夹下/resources2/290.gif创建一个名为的包。resource2src

于 2012-06-20T14:05:57.517 回答
2

似乎文件夹srcresources2都在构建路径中。你试过this.getClass().getResource("/290.gif")吗?

于 2012-06-20T13:54:03.327 回答
0

在工件的运行时,您可以访问资源

InputStream resource = SomeClass.class.getResourceAsStream("<file or directory name"))

或者

URL resource = SomeClass.class.getResource("<file or directory name"))

其中 SomeClass 是工件中的一个类。第一种方式会给你一个 InputStream,你可以用它来读取文件的内容,第二种方式会返回一个 URL,你可以用它来找出文件或目录的路径或沿着目录树移动。

于 2012-06-20T13:58:03.577 回答