语言环境

java.util.Locale 类用于表示“地理,政治或文化”区域,以将给定的文本,数字,日期或操作本地化。因此,Locale 对象可以包含国家,地区,语言以及语言的变体,例如在国家的某个地区中说出的方言,或者在与语言来源的国家不同的国家中说出的方言。

Locale 实例被传递给需要本地化其操作的组件,无论是转换输入,输出还是只需要它来进行内部操作。Locale 类本身不能进行任何国际化或本地化

语言

语言必须是 ISO 639 2 或 3 字符语言代码,或最多 8 个字符的注册语言子标签。如果语言同时包含 2 个和 3 个字符的语言代码,请使用 2 个字符的代码。可以在 IANA 语言子标签注册表中找到完整的语言代码列表。

语言代码不区分大小写,但 Locale 类始终使用小写版本的语言代码

创建区域设置

创建 java.util.Locale 实例可以通过四种不同的方式完成:

Locale constants
Locale constructors
Locale.Builder class
Locale.forLanguageTag factory method 

Java ResourceBundle

你创建一个 ResourceBundle 实例,如下所示:

Locale locale = new Locale("en", "US");
ResourceBundle labels = ResourceBundle.getBundle("i18n.properties");
System.out.println(labels.getString("message"));

考虑我有一个属性文件 i18n.properties

message=This is locale

输出:

This is locale

设置区域设置

如果要使用其他语言重现状态,可以使用 setDefault() 方法。用法:

 setDefault(Locale.JAPANESE); //Set Japanese