2013-03-22 101 views
-3

我想從我的.jar複製一個圖像到一個文件夾。 我做的第一件事是:爲什麼「InputStream流」總是返回null? (java)

InputStream stream = this.getClass().getResourceAsStream("/resources/images/i.gif"); 
if (stream == null) { 
    System.out.println("ERROR!!!"); 
} 

有了這個,流總是空的。在我的jar裏面,我有一個文件夾「resources/images」,裏面有一個圖像「i.gif」。

感謝高級!!!

+0

是包含在jar文件中的圖像? – 2013-03-22 08:02:10

+1

http://mindprod.com/jgloss/getresourceasstream.html – dilix 2013-03-22 08:02:30

+0

「i.gif」的位置是什麼?像在'C:/...../ resources/images/i.gif'中一樣?你可能有錯誤的位置。 – Joetjah 2013-03-22 08:03:22

回答

6

javadoc

的getResourceAsStream()如果與此名稱的資源被發現

它無法找到指定的資源返回的InputStream對象或空。

+0

爲什麼?資源在那裏! – MPMP 2013-03-22 08:52:07

+0

但不能用這個名字。明顯。 – EJP 2013-03-22 08:54:41

+0

我做到了!謝謝。我會回答。 – MPMP 2013-03-22 11:59:04

5

請參閱javadoc,它表示:getResourceAsStream(name)方法返回InputStream對象,如果沒有找到具有此名稱的資源,則返回null。

所以getResourceAsStream(name)找不到資源/resources/images/i.gif並且它返回null。

+0

我有資源在我的罐子裏。 – MPMP 2013-03-22 08:04:31

+2

@MinecrafterPGSV然後你指定錯誤的路徑或資源在錯誤的地方在罐子裏。 – Jesper 2013-03-22 08:20:51

相關問題