2013-08-05 96 views
1

有什麼方法可以將資源添加到java中的類或包中?例如,如果我使用JFileChooser爲用戶提供選擇任何圖像文件的選項。比方說,用戶已經從他的桌面(或任何其他目錄)中選擇了一個文件。我知道我可以通過調用方法getSelectedFile().toString()來獲取它的位置,它將以字符串格式返回我的文件目錄。Java Swing:在運行時添加資源

所以現在我想要的操作是我想將此文件添加到類的資源。我想添加,因爲我想稍後通過調用this.class.getResource()方法來檢索此圖像/文件。

請指導我,謝謝。

+0

爲什麼要以這種方式檢索用戶提供的文件(這些文件不能保證不屬於您的類資源)?你爲什麼不使用常規的文件系統IO API? –

+0

正如@TomG所說,你爲什麼不將選定的文件存儲到其他目錄,並從那裏用普通的Java IO讀取它? – Piro

回答

1

在下面的鏈接是一個相當醜陋的破解,在運行時添加到SystemClassLoader。 Adding files to java classpath at runtime

+0

有沒有簡單的方法?我的要求是,我想在運行時將文件添加到資源中。 例如: - 'String fileName =「C:/ Users/Zulfiqar Junejo/Desktop/profile.jpg」 現在有什麼方法可以將這個目錄代表的文件添加到資源中嗎? –

+0

只能將文件夾或jar文件添加到類加載器(其中包含所有資源)。請參閱Javadoc:http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#getResource(java.lang.String) – Khinsu

+0

[如何回答](http:// stackoverflow。問題/如何回答):**爲鏈接提供上下文** _始終歡迎鏈接到潛在解決方案,但請在鏈接上添加上下文,以便您的同行用戶可以瞭解它是什麼以及爲什麼它是那裏 。如果目標網站無法訪問或永久離線,請務必引用重要鏈接中最相關的部分._ – BackSlash