2012-06-20 35 views
0

我有以下的項目樹:不能使用getResources()方法來訪問資源

enter image description here

我可以訪問290.gif文件路徑:的Java GUI/src目錄/ DK /資源/ 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

您已在Eclipse中聲明srcresources2目錄爲源文件夾。 當Eclipse構建您的應用程序,它複製的recources到build文件夾等:

  • dk.resources可以訪問文件通過/dk/resources/290.gif
  • resources2文件夾文件沒有任何包,並可通過/290.gif

如果您希望文件通過/resources2/290.gif ,然後在src文件夾下創建一個名爲resource2的包。

2

似乎文件夾srcresources2都在構建路徑中。你有沒有試過this.getClass().getResource("/290.gif")

0

在神器的運行時,你可以用訪問資源

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

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

其中SomeClass的是神器一類。第一種方法將爲您提供可用於讀取文件內容的InputStream,第二種方法將返回一個可用於查找文件或目錄路徑或沿目錄樹移動的URL。