存取和修改 JAR 檔案中的檔案
在 JAR 中儲存和擷取檔案中的資料是許多應用程式的常見要求。雖然使用 Class.getResourceAsStream() 從 JAR 讀取檔案很簡單,但寫入 JAR 中的檔案是一個挑戰。
寫入 JAR 檔案的限制
根本限制在於 JAR 檔案的性質。 JAR 檔案是唯讀存檔,針對打包和分發預編譯程式碼進行了最佳化。編譯後對 JAR 檔案所做的任何修改都不會保留。因此,無法直接寫入 JAR 中儲存的檔案。
替代方法
建議的方法是在 JAR 中儲存預設資料檔案並處理分別變更。不要修改 JAR 文件,而是在本機文件系統上建立第二個位置來儲存修改後的或使用者特定的資料。
存取檔案時,應用程式應先檢查輔助位置中是否存在修改後的版本。如果存在,則使用該檔案。否則,將載入 JAR 中的預設檔。這種設計允許保留自訂和首選項,同時保持 JAR 套件的完整性。
範例
考慮一個將使用者首選項儲存在名為「的檔案中的應用程式」首選項.xml」。預設首選項檔案可以嵌入到JAR 中。 JAR 中的預設首選項檔案。
以上是如何有效率地處理 JAR 存檔中的檔案修改?的詳細內容。更多資訊請關注PHP中文網其他相關文章!