2015-05-29 85 views
4

我正在用Java製作一個國際化的應用程序。我需要一個語言中所有字母的列表,從Locale開始。有一些問題,如Alphabet constant in Java?Create Alphabet List from list : Java這涉及到這個問題,但我想知道是否有一個Utils類或它已經定義的地方,我可以得到一個字符列表或一個字符串,其中包含字母表中的所有字母它是一個語言環境。從Java語言環境獲取語言的字母表

+1

請參閱[如何確定區域設置的字母表是否在java中?](http://stackoverflow.com/questions/417377/how - 可以 - 我 - 確定 - 什麼 - 的字母表換一個語言環境 - 是 - 在-JAVA)。 – saka1029

回答

4

您可以參考這個庫和方法的詳細信息,com.ibm.icu.util.LocaleData。通過參數Locale.ENGLISH獲取英文字母。

+1

是的,謝謝你這是我正在尋找 –

+0

這裏是擾流板: 'com.ibm.icu.util.ULocale ulocale = new com.ibm.icu.util.ULocale(java.util.Locale.forLanguageTag(「 PL「)); com.ibm.icu.util.LocaleData.getExemplarSet(ulocale,com.ibm.icu.util.LocaleData.ES_STANDARD);' this returns: '[a-pr-uwyzóąćęłńśźż]' – Bryn

1

這裏有幾個問題。

首先,我必須指出aren't alphabetic有很多種語言。顯然,中國人或日本人是表意語言的例子。不幸的是,這將非常困難,幾乎不可能創建這些語言中所有字符的列表。

其次,雖然Common Locale Data Repository和因此ICU有預定義的集合index exemplarsexample characters這個信息遠未完成。

第三,有多種語言使用多個script(又名書寫系統)。根據您的語言環境的來源,您可能會或可能不知道需要顯示哪些字符。

最後,當你沒有提供你的用例時,很難給你正確的答案。您的應用程序的設計可能會對可用性或可本地化帶來嚴重限制...

+0

謝謝,但它實際上是很容易給我正確的答案,因爲我只是想知道如果有人能指點我描述的東西,並不能解決我所有的問題。 –