簡體   English   中英

訪問打包在jar文件中的文檔

[英]Accessing documents packaged in a jar file

我正在嘗試獲取打包為資源的jar文件中文檔的文件路徑,以便我可以在swing應用程序中顯示它。 從Eclipse運行它時,現在可以使用它的方式,但是如果將其導出到可運行的jar文件中,則無法訪問jar文件中打包的文檔。 當文件放在jar文件中時,如何獲取文件的文件路徑?

這是顯示我如何嘗試訪問文檔的代碼行:

File document = new File(getClass().getResource("/resources/documents/document.pdf").getPath());

對於JAR文件中某些內容而言,唯一存在的“文件路徑”是相對於JAR根目錄的路徑。 但是就您而言,您似乎已經知道了(它是“​​ /resources/documents/document.pdf”)。 JAR文件中的文件沒有路徑可用於直接訪問它們,因為它們在實際文件系統中不存在。 您需要使用getResource()或getResourceAsStream()來訪問它們。 我現在不記得在Swing中哪些類用於圖像,但請仔細查看這些類-它們應該具有重載的方法,這些方法接受InputStream或URL之類的東西而不是文件路徑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM