java程序国际化[38]

java程序国际化[38]




一、程序国际化概述

1.定义:

程序国际化:Internationalization:同一套代码可以在各个语言环境下使用,只是语言显示不同,具体程序操作一样,程序国际化就是这个功能.

2.Locale类:

对象表示特定的地理,政治,文化地区,需要locale来执行其任务的操作成为语言环境敏感操作.

 Locale locale=new Locale("地区","语言");

静态方法,获取本机默认语言:getDefault();

3.ResourceBundle类:只读类

国际化的实现核心在于显示的语言上,通常的做法是将其定义成若干个属性文件(文件后缀是*.properties),属性文件中的格式采用Key=value的格式进行操作;
该类是一个资源文件的读取操作,所有资源文件需要使用该类进行读取,读取的时候不需要加上文件的后缀;
getBundle(String baseName,Locale locale);需要创建对象,来绑定属性,并制定locale对象.
getString(String key);方法从文件属性中使用key来获取value;

4.处理动态文本:MessageFormat

在properties文件中写下{0}表示第一个动态属性,之后由该工具类传递属性值,{1}{2}…可以有多个
给properties文件中的动态参数传参,e是传的对象,w是传递的值;

 w=MessageFormat.format(e,w);

二、代码演示

//创建一个本地语言环境对象,该对象会根据参数设置来自动选择与之相关的语言环境
//参数:语言,地区;中国
Locale locale_CN=new Locale("zh","CN");
//美国,英文:
Locale locale_US=new Locale("en","US");
//获取当前系统默认语言环境:
Locale locale_default=Locale.getDefault();
//绑定文件属性的工具类参数:属性文件的基本名(前缀,如info),后面是语言地区,默认是跟随系统语言;
ResourceBundle r=ResourceBundle.getBundle("com.info",locale_CN);
//输出文件中的key的值,key的名字随便写
System.out.println(r.getString("system.name"));
System.out.println(r.getString("input.name"));
System.out.println(r.getString("input.pwd"));
System.out.println(r.getString("login.success"));
System.out.println(r.getString("login.admin"));
String e=r.getString("login.admin");
String w="我";
//给properties文件中的动态参数传参,e是穿的对象,w是传递的值;
w=MessageFormat.format(e,w);
System.out.println(w);

三.小结

本章概述了java中的程序国际化的定义与使用,该功能可以使用同一套代码,配合各个国家的语言进行输出,而不需要重新再编写另外的代码;
有哪里不足或者有更好的建议,欢迎留言吐槽,有哪里不懂的小伙伴,可以私信我,我会一一答复,感谢认可,感谢支持!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

道而起

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值