普通话和粤语是否有单独的 Java 语言环境?
Is there a separate Java locale for Mandarin and Cantonese?
我正在尝试使用 JDK 将不同语言的名称翻译成其他语言。例如:
new Locale("en", "US").getDisplayLanguage(new Locale("en", "US")); // English
new Locale("en", "US").getDisplayLanguage(new Locale("fr", "FR")); // anglais
我想这样做以获得 "Mandarin" 和 "Cantonese",但是
new Locale("zh", "CN").getDisplayLanguage(new Locale("en", "US")); // Chinese
是否有我可以用来获取 "Mandarin" 和 "Cantonese" 而不是 "Chinese" 的语言环境变体?我可以使用另一个 Java 库来将语言的名称翻译成其他语言吗?
谢谢!
这实际上是普通话:
new Locale("zh", "CN").getDisplayLanguage(new Locale("en", "US"));
但是,是的,你得到 Chinese
您可以使用:
Locale.SIMPLIFIED_CHINESE.getDisplayName(Locale.ENGLISH)
对于Chinese (China)
和
Locale.TRADITIONAL_CHINESE.getDisplayName(Locale.ENGLISH)
对于Chinese (Taiwan)
和
Locale.forLanguageTag("zh-HK").getDisplayName(Locale.ENGLISH)
对于Chinese (Hong Kong)
以下代码returns Java 8 中的“粤语”,Java 14 中的“粤语”。
Locale.forLanguageTag("zh-yue").getDisplayName()
我正在尝试使用 JDK 将不同语言的名称翻译成其他语言。例如:
new Locale("en", "US").getDisplayLanguage(new Locale("en", "US")); // English
new Locale("en", "US").getDisplayLanguage(new Locale("fr", "FR")); // anglais
我想这样做以获得 "Mandarin" 和 "Cantonese",但是
new Locale("zh", "CN").getDisplayLanguage(new Locale("en", "US")); // Chinese
是否有我可以用来获取 "Mandarin" 和 "Cantonese" 而不是 "Chinese" 的语言环境变体?我可以使用另一个 Java 库来将语言的名称翻译成其他语言吗?
谢谢!
这实际上是普通话:
new Locale("zh", "CN").getDisplayLanguage(new Locale("en", "US"));
但是,是的,你得到 Chinese
您可以使用:
Locale.SIMPLIFIED_CHINESE.getDisplayName(Locale.ENGLISH)
对于Chinese (China)
和
Locale.TRADITIONAL_CHINESE.getDisplayName(Locale.ENGLISH)
对于Chinese (Taiwan)
和
Locale.forLanguageTag("zh-HK").getDisplayName(Locale.ENGLISH)
对于Chinese (Hong Kong)
以下代码returns Java 8 中的“粤语”,Java 14 中的“粤语”。
Locale.forLanguageTag("zh-yue").getDisplayName()