これはICU APIを使用して、私の初めてです、と私は非常に単純であると考え、何かを見つけるためにしようと非常に苦労しています:ネイティブ言語に指定されたロケール/言語名を取得するために(代わりに英語で)母国語で言語名を取得する方法は?
例:参照として
fr -> Français
en -> English
pt_BR -> Português Brasileiro, or "Português (Brasil)"
es_ES -> Español Iberico, or "Español (España)"
、babel
に私はデフォルトであることネイティブ、内の任意の言語を指定されたロケール名を取得することができます
>>> import babel
>>> locale = babel.Locale.parse('pt_BR')
>>> locale.get_display_name()
português (Brasil)
>>> locale.get_display_name('fr')
portugais (Brésil)
>>> locale.get_display_name('en')
Portuguese (Brazil)
それで、ICUで同じことをするには?私はPyICUを使っているので、Pythonの例が大歓迎ですが、Java/C/C++も問題です。問題はAPIであり、言語ではないからです。
ありがとうございます!
正しくない。既定のロケールが英語なので、おそらくこの現象が表示されます。はい、ネイティブ言語で名前を取得するには、インスタンス自体を渡す必要があります。デフォルトのロケールを使用するICUの関数は、そのまま記述されています。 –
ありがとう@ StevenR.Loomis、これを反映する答えを修正しました – MestreLion