首頁 >Java >java教程 >如何從 Java 桌面應用程式存取嵌入在 JAR 中的 XML 檔案?

如何從 Java 桌面應用程式存取嵌入在 JAR 中的 XML 檔案?

Barbara Streisand
Barbara Streisand原創
2024-12-06 21:12:20392瀏覽

How to Access an XML File Embedded in a JAR from a Java Desktop Application?

從Java 桌面應用程式存取JAR 檔案中的XML 檔案

在此場景中,您嘗試存取JAR 檔案中的XML 檔案來自作為桌面應用程式運行的單獨JAR 的JAR 檔案。雖然您已成功取得檔案的 URL,但使用 String 將其傳遞給 FileReader 會導致 FileNotFoundException。

但是,您已經能夠使用帶有 ImageIcon 的 URL 從同一 JAR 讀取圖像資源建構函數。這表示您用於取得 URL 的方法是正確的。

URL url = getClass().getResource("/xxx/xxx/xxx/services.xml");
// ...

嘗試解析XML 檔案時出現問題:

XMLReader xr = XMLReaderFactory.createXMLReader();
xr.setContentHandler( this );
xr.setErrorHandler( this );
xr.parse( new InputSource( new FileReader( filename )));

解決方案:

讀取XML 檔案的錯誤方法是使用new FileReader( filename )。若要修正此問題,請使用 java.lang.Class.getResourceAsStream(String) 方法。它為名稱指定的資源提供一個InputStream,讓您可以讀取XML檔案。

URL url = getClass().getResourceAsStream("/xxx/xxx/xxx/services.xml");
// ...

以上是如何從 Java 桌面應用程式存取嵌入在 JAR 中的 XML 檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn