2013-01-24 28 views
1

我正在開發一個java桌面應用程序。將要安裝在最終用戶計算機上的文件夾是:Sources,Images和...。 Sources文件夾是程序源存在的文件夾(Classes),Images文件夾是程序需要它們的圖像存在的地方。 現在在程序中,我應該如何處理我的圖像?如何解決其絕對路徑未知的文件?

我的意思是我不知道我的圖像文件的絕對路徑(因爲我不知道在哪裏,用戶決定安裝程序),只知道它們將在圖片文件夾...

+2

顯然你應該使用相對路徑。像'../ Images' – madhead

回答

1

無論是圖像文件夾可以相對於正在運行的程序來確定,或者用戶必須告訴你圖像的存儲位置。用戶可能需要來自多個目錄的圖像,在這種情況下,您將不得不掃描它們或詢問用戶它們在哪裏。例如添加庫功能是音樂程序。

+0

你能解釋一下哪些文件夾被確定爲「相對」嗎? – Soheil

+1

例如,如果您知道Images目錄始終與JAR位於同一個目錄中,或者與父JAR相同,則可以使用相對路徑來查找它們。通常,將可執行文件的工作文件作爲用戶主目錄的子目錄,並不是一個好主意。 –

+0

好信息,thanx! – Soheil

1

如果您的程序將從包含Sources和Images文件夾的目錄開始,那麼您可以通過Images/imageFile來引用它們。

1

我不知道解決這個問題的最佳解決方案,但如果我有問題,像你這樣我會做下面的步驟:

  1. 可以使用環境變量,其中用戶(或你)可以添加您應用程序路徑(或您想要的其他路徑)。
  2. 或者像madhead建議「使用相對路徑」
  3. 或者,您可以要求用戶選擇爲此目錄,關於它的信息保存到配置文件。