我正在生成一个区域设置列表,并使用java.util.Locale打印出它们的本地显示语言(例如,将ja_JP打印为日本語)。我注意到zh_CN (简体中文)和zh_TW (繁体中文)都本地化为中文,而不是简体中文和繁体中文。有没有办法让这些地区包含简体和繁体的前缀字符,而不硬编码zh_CN应该是简体中文,zh_TW应该是繁体中文?我知道我可以打印出语言+国家(即中文(中国),但这并不完全相同。
下面是一个java代码片段,演示了它们是一样的:
import java.util.Locale;
public final class test {
public static void main(String[] args) {
Locale locale1 = new Locale("zh", "cn");
System.out.println( locale1.getDisplayLanguage(locale1));
System.out.println( locale1.getDisplayLanguage(Locale.TRADITIONAL_CHINESE));
System.out.println( locale1.getDisplayLanguage(Locale.SIMPLIFIED_CHINESE));
System.out.println( locale1.getDisplayCountry(locale1));
System.out.println( "");
Locale locale2 = new Locale("zh", "tw");
System.out.println( locale2.getDisplayLanguage(locale2));
System.out.println( locale2.getDisplayLanguage(Locale.TRADITIONAL_CHINESE));
System.out.println( locale2.getDisplayLanguage(Locale.SIMPLIFIED_CHINESE));
System.out.println( locale2.getDisplayCountry(locale2));
}
}发布于 2017-04-07 17:57:07
用以下方式实例化区域设置对象应该可以解决您的问题:
Locale locale1 = new Locale("zh", "CN");
Locale locale2 = new Locale("zh", "TW");https://stackoverflow.com/questions/27258095
复制相似问题