2014-11-06 93 views
0

因此,我有一個用JavaFx 2.2編寫的應用程序,該應用程序已被打包用於Linux,Mac和Windows。儘管如此,我仍然遇到了一些有關文本字段的奇怪問題。應用程序將讀取文件並根據文件中找到的內容填充一些標籤。當在ubuntu或mac上運行時,我們得到如enter image description here的結果,因爲您可以看到我們在c上有特殊的重音字符,它看起來很好。但是在Windows中,它顯示爲這樣的enter image description here。任何想法爲什麼會發生這種情況?我有點困惑,因爲它們在所有三種應用中都是相同的。謝謝。Windows中的JavaFx應用程序無法正確顯示文本

+1

這可能是字符編碼的問題。在文件中使用什麼編碼?讀取該文件的代碼是什麼?我猜測該文件是使用平臺默認編碼(可能是例如Windows 1252或Windows 1250或ISO-8859-1或ISO-8859-2或其它)讀取的,但該文件實際上是以不同的編碼方式編碼的,例如, UTF-8。 – 2014-11-06 16:22:13

+0

如果我正確診斷問題,解決方案是在讀取文件時指定正確的編碼。 – 2014-11-06 16:23:12

+0

謝謝我會研究這個,讓你知道它是怎麼回事 – decal 2014-11-06 16:24:00

回答

2

請確保在讀取文件時指定字符編碼,以避免使用平臺的默認編碼,這在操作系統之間會有所不同。巧合的是,Linux和Mac上的默認設置恰好匹配文件編碼並生成正確的輸出,但不應該依賴它。

相關問題