2014-04-29 136 views
0

我已經構建了我的GUI程序並獲得了一個可運行的jar文件,但是我想包含一個txt文件,用戶可以將其編輯爲到jar文件或伴隨它。此文本文件可以包含操作系統之間不同的編輯器的路徑。有沒有辦法做到這一點?Runnable Jar File with extra .txt

謝謝

+0

您是否希望將其作爲編輯的默認值,或者應該保存更改?如果前者,您可以使用'ClassLoader#getResource()'或'ClassLoader#getResourceAsStream()'從jar文件中加載。否則,我會建議創建一個包含您想要支持的每個操作系統位置的映射。 –

+0

如果答案有幫助,可以[接受](http://meta.stackoverflow.com/a/5235/227183)。 –

回答

2

你不能編輯一個文件並保存在罐子裏面。你可以做的是用默認數據將你的文件包含在jar文件中,編輯它並將其保存到jar外的文件中。

實際上它是可能的,如果你打開罐子本身的代碼,並重新包裝當您更改文本,但它像拆解車門,車輪,座椅和發動機剛裝上去的手套箱

+0

實際上,重新打包可能會失敗,因爲在某些情況下,jar可能會從JVM引用並且無法保存。 –

+0

nope ...當jar運行時,它將其內容提取到系統臨時文件夾:) – Dima

0

最簡單的是將文件放在與罐子一起,然後:

File file = new File("file.txt"); 

以另一種方式,如果要啓動關聯編輯器應用程序(默認情況下該文件類型OS),並打開一個文件編輯,你可以試試下:

File file = new File("file.txt");  
if (Desktop.isDesktopSupported()) { 
    Desktop.getDesktop().edit(file); 
}