參考我的previous question,我想問一下如何將不同的 文件夾中的文件讀入類似的.jar
。在swing應用程序中訪問.jar下的文件?
該問題提供了文件夾層次結構和詳細信息。 我的主要問題是用一行代碼:
JTextPane textPane = ... //general initialization
textPane.setPage("path/file.html");
的問題是我要保持這種file.html在我的.jar。
此外我想知道關於這個主題的建議。
參考我的previous question,我想問一下如何將不同的 文件夾中的文件讀入類似的.jar
。在swing應用程序中訪問.jar下的文件?
該問題提供了文件夾層次結構和詳細信息。 我的主要問題是用一行代碼:
JTextPane textPane = ... //general initialization
textPane.setPage("path/file.html");
的問題是我要保持這種file.html在我的.jar。
此外我想知道關於這個主題的建議。
要在JAR中加載資源,可以使用Class.getResource()
。不是在JAR從一個普通的文件夾結構加載時,這同樣適用:
textPane.setPage(ThisClass.class.getResource("relative/path/to/file.html"));
這裏的路徑是從任何文件夾ThisClass.class
是人們普遍更好地明確命名類,而不是使用this.getClass()
,這可能。如果爲子類調用此方法,最終會在另一個(並非意想不到的)位置查找。
我可以使用'ClassName.class.getResource()'在這裏? – Asif 2012-04-06 13:05:58
哎呀,我的壞 - 是的,那是對的。 – 2012-04-06 13:06:59
我正在使用:'MyClass.class.getResource(「/ resources/files/help/file.html」);',這將返回帶有'System.out.println()'的正確路徑,但是''null'帶有'textPane的'NullPointerException'。 setPage()'。 。 。 ?? – Asif 2012-04-06 13:13:02
[Java:加載包含在jar中的資源]的可能的重複(http://stackoverflow.com/questions/574809/java-load-a-resource-contained-in-a-jar) – jtahlborn 2012-04-06 12:53:37