关于java1.8中的语言国际化ResourceBundle的使用
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,比如你要写一个软件,既要支持中文显示和操作,也要支持英文显示和操作。如何解决?方法1,单独写两套软件;方法2,一套软件,两套配置,对其中所有要显示的字段都做两份描述,一份中文,一份英文,程序启动的时候
千家信息网最后更新 2025年12月01日关于java1.8中的语言国际化ResourceBundle的使用
比如你要写一个软件,既要支持中文显示和操作,也要支持英文显示和操作。如何解决?
方法1,单独写两套软件;方法2,一套软件,两套配置,对其中所有要显示的字段都做两份描述,一份中文,一份英文,程序启动的时候,根据操作语言选择中文还是英文的描述。
java就提供了方法2这样的api功能,ResourceBundle,简化了开发过程,提高开发效率。
使用起来也很方便,创建多个配置文件,然后在程序中根据用户选择使用哪套配置即可。
- 弄清楚路径问题
我们创建Message_zh_CN.properties文件和Message_en_CA.properties,这两个文件放在项目的src路径下,这两个文件格式默认是ISO-8859-1。文件名只要符合 xxx_xxx_xxx.properties格式即可,前面的部分可以替换。
Message_en_CA.properties文件中的内容,其中{0}{1}{0}是参数绑定的用法,后面示例可以看到,这样子就可以动态绑定需要的内容。
info= hello{0}{1}{0}Message_zh_CN.properties
info= \u4f60\u597d\uff01{0}{1}{0}- 代码调用
package baseAPI;import java.util.ResourceBundle;import java.text.MessageFormat;import java.util.Locale;public class useResourceBundle { public static void main(String[] args) { //配置需要读取的配置文件Message_en_CA.properties Locale zhLoc = new Locale("en","CA"); ResourceBundle rb = ResourceBundle.getBundle("Message",zhLoc); //通过getString方式获取字段值 System.out.println("内容:"+rb.getString("info")); String str1="内容:"+rb.getString("info"); //此处使用了之前配置文件的{0}{1} System.out.println(MessageFormat.format(str1, " one","two")); //Message_zh_CN.properties Locale zhLoc1 = new Locale("zh","CN"); rb = ResourceBundle.getBundle("Message",zhLoc1); System.out.println("内容:"+rb.getString("info")); str1="内容:"+rb.getString("info");System.out.println(MessageFormat.format(str1, "一","二")); }}
文件
内容
配置
方法
软件
中文
英文
两个
字段
格式
程序
路径
开发
支持
选择
语言
代码
功能
动态
参数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全类专业主要学什么
互联网企业有没有高科技
代理服务器作用不包括
用服务器编译安卓系统
软件开发公司只让写文档
辽宁统一软件开发
跟软件开发有关的证书
岳阳软件开发培训学校
婆婆小说软件开发
网络安全和信息化委员会职能
国际航运科技和互联网大会
便携式网络服务器
网络技术 培训机构
河南服务器工控机箱多少钱
选择题 数据库管理系统
宁波定制app软件开发
中国网络安全宝典
炸猴爷服务器的是谁
易语言 控件外部数据库
包含风险分析软件开发模型
基于龙芯芯片的软件开发
我国5G网络技术
联想服务器软件
oracle数据库可以重排吗
民族网络安全教育
数据库文件在线
数据库怎么还原后保留原有的
ibm服务器进入安全模式
泛微有做app软件开发吗
选择题 数据库管理系统