Welcome 微信登录

首页 / 软件开发 / JAVA / Java时间相关内容学习(6) Locale介绍

Java时间相关内容学习(6) Locale介绍2014-08-06本章介绍Locale。

1 Locale 介绍

Locale 表示地区。每一个Locale对象都代表了一个特定的地理、政治和文化地区。

在操作 Date, Calendar等表示日期/时间的对象时,经常会用到;因为不同的区域,时间表示方式都不同。

下面说说Locale对象的3种常用创建方式。

1 获取默认的Locale

使用方法:

 Locale locale = Locale.getDefault()
2 直接使用Locale的静态对象

Locale.java中提供了以下静态对象

public static final Locale CANADApublic static final Locale CANADA_FRENCHpublic static final Locale CHINApublic static final Locale CHINESEpublic static final Locale ENGLISHpublic static final Locale FRANCEpublic static final Locale FRENCHpublic static final Locale GERMANpublic static final Locale GERMANYpublic static final Locale ITALIANpublic static final Locale ITALYpublic static final Locale JAPANpublic static final Locale JAPANESEpublic static final Locale KOREApublic static final Locale KOREANpublic static final Locale PRCpublic static final Locale ROOTpublic static final Locale SIMPLIFIED_CHINESEpublic static final Locale TAIWANpublic static final Locale TRADITIONAL_CHINESEpublic static final Locale UKpublic static final Locale US
使用方法:下面的Locale对象是对应 “中国(大陆)”的

Locale locale = Locale.SIMPLIFIED_CHINESE

3 通过Locale的构造函数创建Locale对象

Locale的构造函数共有3个。如下:

Locale(String language) Locale(String language, String country) Locale(String language, String country, String variant)

使用方法:

Locale local = new Locale("zh", "CN");

Locale类支持非常多的国家和地区。我们可以通过以下方法,查看Locale支持的全部区域:

Locale[] ls = Locale.getAvailableLocales();

for (Locale locale:ls) {   System.out.println("locale :"+locale); }

输入结果如下:

All Locales: ja_JP, es_PE, en, ja_JP_JP, es_PA, sr_BA, mk, es_GT, ar_AE, no_NO, sq_AL, bg, ar_IQ, ar_YE, hu, pt_PT, el_CY, ar_QA, mk_MK, sv, de_CH, en_US, fi_FI, is, cs, en_MT, sl_SI, sk_SK, it, tr_TR,

zh, th, ar_SA, no, en_GB, sr_CS, lt, ro, en_NZ, no_NO_NY, lt_LT, es_NI, nl, ga_IE, fr_BE, es_ES, ar_LB, ko, fr_CA, et_EE, ar_KW, sr_RS, es_US, es_MX, ar_SD, in_ID, ru, lv, es_UY, lv_LV, iw, pt_BR, ar_SY,

hr, et, es_DO, fr_CH, hi_IN, es_VE, ar_BH, en_PH, ar_TN, fi, de_AT, es, nl_NL, es_EC, zh_TW, ar_JO, be, is_IS, es_CO, es_CR, es_CL, ar_EG, en_ZA, th_TH, el_GR, it_IT, ca, hu_HU, fr, en_IE, uk_UA, pl_PL,

fr_LU, nl_BE, en_IN, ca_ES, ar_MA, es_BO, en_AU, sr, zh_SG, pt, uk, es_SV, ru_RU, ko_KR, vi, ar_DZ, vi_VN, sr_ME, sq, ar_LY, ar, zh_CN, be_BY, zh_HK, ja, iw_IL, bg_BG, in, mt_MT, es_PY, sl, fr_FR,

cs_CZ, it_CH, ro_RO, es_PR, en_CA, de_DE, ga, de_LU, de, es_AR, sk, ms_MY, hr_HR, en_SG, da, mt, pl, ar_OM, tr, th_TH_TH, el, ms, sv_SE, da_DK, es_HN

下面选择其中的两个进行说明,如何利用它们来创建Locale对象: 例如,第一个输出是“ja_JP”。

其中,ja代表“语言”,这里指日语;“JP”代表国家,这里指日本。 我们可以通过如下方法,创建“语言是日语,国家是日本的Locale对象”。

Locale locale = new Locale("ja", "JP");

例如,第三个输出是“en”。

其中,en代表“语言”,这里指英语。 我们可以通过如下方法,创建“语言是英文的Locale对象”。

Locale locale = new Locale("en");