2013-07-15 66 views
3

所以,我終於發現JavaFX可以讓你使用HostServices.showDocument(uri)打開瀏覽器給定的url。儘管我遇到了問題;我無法打開包含中文字符的網址。它只能將它們解釋爲'?',將您帶到錯誤的網址。 AWT的Display.browse(uri)可以毫無問題地處理字符,所以我知道它可以在技術上傳達給瀏覽器。我不確定是否有任何事情可以在我的結束或不是。showDocument()與非標準(中文)字符

我的問題是:有什麼辦法讓JavaFX的HostServices.showDocument()正確讀取中文字符?

編輯: 樣品字符串
http://www.mdbg.net/chindict/chindict.php?page=worddict&wdrst=0&wdqb=%E6%96%87

您可以按照鏈接識破地址中國性格(在URL的盡頭)。所以在這樣做的時候,我注意到它將字符轉換爲一系列的%,字母和數字。將這些插入showDocument()代替字符可以正常工作。那麼,我想現在的問題是「如何將字符轉換爲這種格式?」

+0

我建議記錄一個針對[JavaFX運行時項目](https://javafx-jira.kenai.com)的錯誤,其中包含一個示例uri和運行時環境的描述。您還可以編輯您的問題以包含您的uri所以有人可以嘗試代表授予您的問題。 – jewelsea

+0

會做,謝謝。 – SwR

+0

這對一些巴西葡萄牙人來說也是一個問題。 – Ramiro

回答

1

我能弄清楚將字符串轉換爲URI,然後使用.toASCIIString()方法給了我什麼(將中文字符轉換成showDocument()可讀的內容,謝謝幫助jewelsea。

如果還有更好的方法可以做到這一點,請隨時給我另一個答案