获取i18n配置文件

摘自《开源世界旅行手册》作者:kardinal
习惯上,internationalization(国际化)简写为I18N,中间的数字为省略的字母个数。
在 Linux 系统中,通过定义一组环境变量来设置程序的语言环境,以实现对I18N的支持,这种机制称为:locale(本地化)
fhc2007@fhc2007-desktop:~$ locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=
fhc2007@fhc2007-desktop:~$
locale 变量LANG         低优先级全局 locale 变量         如果下面的变量未赋值,默认使用此变量的值
LC_COLLATE         比较和排序习惯         会影响目录列表的分类显示等
LC_CTYPE         定义系统的字符处理特性         哪些字符能被视为字母、数字,等等;与中文输入关系密切
LC_MESSAGES         提示信息,错误信息, 状态信息, 标题, 标签, 按钮和菜单等
LC_MONETARY         定义货币单位和货币型数值的格式
LC_NUMERIC         定义非货币型数值的格式         影响到千位分隔符和小数分隔符等
LC_TIME         定义日期和时间的格式
LC_NAME         姓名书写方式
LC_ADDRESS         地址书写方式
LC_TELEPHONE         电话号码书写方式
LC_MEASUREMENT         度量衡表达方式
LC_PAPER         定义默认的纸张尺寸
LC_IDENTIFICATION         对 locale 自身包含信息的概述
LC_ALL         高优先级全局 locale 变量         为此变量赋值会强行覆盖上面变量的值,不推荐
假如未设置以上变量,系统将采用 POSIX 作为 lcoale,也就是 C locale
locale值locale 变量的值有三个要素:语言代码 (Language Code)、 地域代码 (Country Code) 和字符集(Encoding)(中文 Windows 系统中使用的字符集为GB2132,而 UTF-8 是大势所趋,它能够显示比 GB2132 更多的字符)
语言代码[_地域代码[.字符集]]例如:
语言/国家代码         描述
en_US.ISO-8859-1         美国英语
en_US.UTF-8
zh_CN.UTF-8         简体中文
zh_TW.UTF-8         繁体中文
字符集众所周知,计算机中的信息,是以数字形式表示的,字符也不例外。字符以数字编号的形式存储,使用时,根据这个编号,在字符集中找到相应的字符
字符集是字符在系统内的编码方式,也就是通常所说的内码。不同的字符集有不同的编码方式,
例如“码”字,它的 GB2312编码 为 426B;UTF-8编码 为 E7A081 。如果错误的以 GB2312编码 来检索 E7A081,将会产生类似 “锘跨爜” 的乱码
只要系统中安装了中文字体,通过字符集的支持,便可以正常显示中文,而无需设置 locale;locale 可以使操作界面显示中文,并可以使用中文输入等
其他另外还有一个本地化变量叫做 LINGUAS。它会影响到基于 gettext 的程序;它还能决定某些特殊软件包的本地化,比如kde-i18n和openoffice。这个变量的值为一组以空格分隔的语言代码:

LINGUAS="zh en"


程序获取 i18n配置文件:Locale locale = LocaleContextHolder.getLocale();

defaultDatePattern = ResourceBundle.getBundle(Constants.BUNDLE_KEY,
locale).getString("date.format");



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值