2011-07-18 14 views
-1

有什麼辦法可以爲某些文件製作靈活的URL? 我有一個播放聲音的程序,我想在其他計算機上運行它。 如何讓我的程序找到特定的聲音文件? 或者,也許我想爲文本文件或東西做一個靈活的URL。 有人可以爲我提供一個代碼示例嗎? 或者我應該問用戶使用JFileChooser我應該怎麼做才能爲任何類型的文件創建靈活的URL?

或者我應該附上我的程序文件?這可能嗎?

P.S: 解釋代碼示例會更好,因爲我不是專家。

編輯:聲音文件是項目文件夾(使用eclipse)內 所以應該在這樣 C語言帶來的地方:\用戶\ Rev3rse \工作區\ PROJECT1 \ someSound.mp3 我希望我給了足夠的ü info ...

+1

在這種情況下,「靈活的URL」的含義並不清楚。你能詳細說明一下嗎? –

+0

它總是在同一個地方嗎?因爲那麼你可以給出相對路徑:/somedir/mysound.file,其中頂部目錄是程序所在的目錄。 –

回答

1

有什麼辦法可以爲某些文件製作靈活的URL? ..可能我應該附加文件與我的程序?這可能嗎?

這不僅是可能的,但通常做到。將資源打包到Jar中。對於文檔,您可以使用標準Zip(/ Jar)壓縮。對圖像或聲音文件使用這種類型的壓縮沒有什麼意義,它們通常具有它們自己的(非常有效的)壓縮形式。將Jar添加到應用程序的運行時類路徑中。

爲了得到一個URL的資源,只需使用的線沿線的東西:

URL urlToResource = this.getClass().getResource("path/to/the.resource"); 

..where path/to/是在the.resource位於罐的子目錄。

+0

可以給我例子沒有路徑/到/ the.resource,即時通訊談論真正的URL你可以嗎? – Rev3rse

+0

@ Rev3rse:*「我在談論真正的URL」*什麼[Class.getResource(String)](http://download.oracle.com/javase/6/docs/api/java/lang/Class.html# getResource%28java.lang.String%29)**根據您點擊該鏈接時獲得的JavaDocs,真的返回**嗎?當您嘗試*使用該方法時發生了什麼? –

+0

當我嘗試getClass.getResource時,返回的值是「null」我做錯了或做什麼?檢查這個:URL url = this.getClass()。getResource(someSound.mp3); ..我幾乎嘗試了所有可能的路徑.. – Rev3rse

相關問題