2009-06-18 112 views
1

在Java 5中,是否有默認的方式將URL傳遞給系統,並讓它啓動與其關聯的應用程序? 例如,http://鏈接通常會打開IE或Firefox,但itms://應該會打開iTunes。Java:如何爲URL啓動系統的註冊應用程序

如果可能,我寧願不使用Runtime.exec()直接啓動一些外部進程,因爲這將是平臺特定的。如果沒有其他辦法,我會要求Windows/OS X和Linux支持哪些最流行的?

+0

另見:http://stackoverflow.com/questions/526037/java-how-to-open-user-system-preffered-editor-for-given-file – erickson 2009-06-18 23:58:32

回答

2

我與伊萬是Java桌面API將工作達成一致,但它只有6。

我知道如何做到這一點在Windows(涉及執行rundll32.dll),但我做了一些谷歌搜索快速和this link好像你最好的拍攝。

希望有所幫助。

4

使用Java Desktop API

Desktop desktop = Desktop.getDesktop(); 
if (desktop.isSupported(Desktop.Action.BROWSE)) { 
    desktop.browse(uri); 
} 
+0

我不認爲這是直到Java 6. – erickson 2009-06-18 23:54:42

0

的Windows,它的 「啓動[URI]」,OSX它的 「打開[URI]」,Linux沒有等同,因爲它完全取決於自己的窗口管理器。

至於是否itms://打開iTunes,這一切都取決於它們的配置。

伊萬的答案似乎比我的好得多。

0

看起來像你想java.awt.Desktop但我認爲這是在1.6推出,並在5不可用...... :-(

相關問題