我想知道如何为不同语言命名我的文件夹。我在哪里可以找到Android上支持的语言列表?


当前回答

我认为最好的方法是运行一个示例代码来查找受支持的地区。 我已经做了一个代码片段,它:

final Locale[] availableLocales=Locale.getAvailableLocales();
for(final Locale locale : availableLocales)
  Log.d("Applog",":"+locale.getDisplayName()+":"+locale.getLanguage()+":"
    +locale.getCountry()+":values-"+locale.toString().replace("_","-r"));

这些列是:displayName(它对用户的外观),locale,变量,以及开发人员应该将字符串放入的文件夹。

下面是我用5.0.1模拟器制作的表格: https://docs.google.com/spreadsheets/d/1Hx1CTPT82qFSbzuWiU1nyGROCNM6HKssKCPhxinvdww/

奇怪的是,在某些情况下,我得到了“#”,这是我以前从未见过的东西。它可能很新,我选择的规则对于这些情况可能是不正确的(尽管当我放入这样的文件夹和文件时,它仍然编译良好),但对于其他情况应该没有问题。

如果有人知道“#”是什么,以及如何处理它,请告诉我。

其他回答

在这里:

public static final Locale  CANADA  Locale constant for en_CA.
public static final Locale  CANADA_FRENCH   Locale constant for fr_CA.
public static final Locale  CHINA   Locale constant for zh_CN.
public static final Locale  CHINESE Locale constant for zh.
public static final Locale  ENGLISH Locale constant for en.
public static final Locale  FRANCE  Locale constant for fr_FR.
public static final Locale  FRENCH  Locale constant for fr.
public static final Locale  GERMAN  Locale constant for de.
public static final Locale  GERMANY Locale constant for de_DE.
public static final Locale  ITALIAN Locale constant for it.
public static final Locale  ITALY   Locale constant for it_IT.
public static final Locale  JAPAN   Locale constant for ja_JP.
public static final Locale  JAPANESE    Locale constant for ja.
public static final Locale  KOREA   Locale constant for ko_KR.
public static final Locale  KOREAN  Locale constant for ko.
public static final Locale  PRC Locale constant for zh_CN.
public static final Locale  ROOT    Locale constant for the root locale.
public static final Locale  SIMPLIFIED_CHINESE  Locale constant for zh_CN.
public static final Locale  TAIWAN  Locale constant for zh_TW.
public static final Locale  TRADITIONAL_CHINESE Locale constant for zh_TW.
public static final Locale  UK  Locale constant for en_GB.
public static final Locale  US  Locale constant for en_US.

4.0版本更新

Android 4.0.3平台

Arabic, Egypt (ar_EG)
Arabic, Israel (ar_IL)
Bulgarian, Bulgaria (bg_BG)
Catalan, Spain (ca_ES)
Chinese, PRC (zh_CN)
Chinese, Taiwan (zh_TW)
Croatian, Croatia (hr_HR)
Czech, Czech Republic (cs_CZ)
Danish, Denmark(da_DK)
Dutch, Belgium (nl_BE)
Dutch, Netherlands (nl_NL)
English, Australia (en_AU)
English, Britain (en_GB)
English, Canada (en_CA)
English, India (en_IN)
English, Ireland (en_IE)
English, New Zealand (en_NZ)
English, Singapore(en_SG)
English, South Africa (en_ZA)
English, US (en_US)
Finnish, Finland (fi_FI)
French, Belgium (fr_BE)
French, Canada (fr_CA)
French, France (fr_FR)
French, Switzerland (fr_CH)
German, Austria (de_AT)
German, Germany (de_DE)
German, Liechtenstein (de_LI)
German, Switzerland (de_CH)
Greek, Greece (el_GR)
Hebrew, Israel (he_IL)
Hindi, India (hi_IN)
Hungarian, Hungary (hu_HU)
Indonesian, Indonesia (id_ID)
Italian, Italy (it_IT)
Italian, Switzerland (it_CH)
Japanese (ja_JP)
Korean (ko_KR)
Latvian, Latvia (lv_LV)
Lithuanian, Lithuania (lt_LT)
Norwegian bokmål, Norway (nb_NO)
Polish (pl_PL)
Portuguese, Brazil (pt_BR)
Portuguese, Portugal (pt_PT)
Romanian, Romania (ro_RO)
Russian (ru_RU)
Serbian (sr_RS)
Slovak, Slovakia (sk_SK)
Slovenian, Slovenia (sl_SI)
Spanish (es_ES)
Spanish, US (es_US)
Swedish, Sweden (sv_SE)
Tagalog, Philippines (tl_PH)
Thai, Thailand (th_TH)
Turkish, Turkey (tr_TR)
Ukrainian, Ukraine (uk_UA)
Vietnamese, Vietnam (vi_VN)

来源:http://us.dinodirect.com/Forum/Latest-Posts-5/Android-Versions-and-their-Locales-1-86587/

查看支持列表的最佳方法是在最新版本中启动模拟器并打开“自定义语言环境”应用程序。这将列出该版本Android支持的所有语言和语言环境。

我找到了一个列表,这可能是一个给定的Android版本(API级别)支持的地区的完整列表: 进入android- sdk\platforms\android-[XX]\data\res\values,其中XX表示API级别,然后用任何文本编辑器打开locale_config.xml。 它是人类可读的,如果需要,可以很容易地处理。

我认为最好的方法是运行一个示例代码来查找受支持的地区。 我已经做了一个代码片段,它:

final Locale[] availableLocales=Locale.getAvailableLocales();
for(final Locale locale : availableLocales)
  Log.d("Applog",":"+locale.getDisplayName()+":"+locale.getLanguage()+":"
    +locale.getCountry()+":values-"+locale.toString().replace("_","-r"));

这些列是:displayName(它对用户的外观),locale,变量,以及开发人员应该将字符串放入的文件夹。

下面是我用5.0.1模拟器制作的表格: https://docs.google.com/spreadsheets/d/1Hx1CTPT82qFSbzuWiU1nyGROCNM6HKssKCPhxinvdww/

奇怪的是,在某些情况下,我得到了“#”,这是我以前从未见过的东西。它可能很新,我选择的规则对于这些情况可能是不正确的(尽管当我放入这样的文件夹和文件时,它仍然编译良好),但对于其他情况应该没有问题。

如果有人知道“#”是什么,以及如何处理它,请告诉我。