PropertyResourceBundle bundle ;
bundle=(PropertyResourceBundle) ResourceBundle.getBundle("mess", Locale.US);
System.out.println( MessageFormat.format(bundle.getString("hello"),"loren" ) );
PropertyResourceBundle 是 ResourceBundle的子类,使用 ResourceBundle.getBundle来获取实例。
getBundle(String baseName)
getBundle(String baseName, Locale locale)
getBundle(String baseName, Locale locale, ClassLoader loader)
以上3个是使用较多的方法。
baseName,是消息文件的基础名,baseName不要加语言和国家后缀。ResourceBundle会自动根据参数、运行环境去查找资源文件。
baseName可以是简单的一个名字,如 "mess",或是带路径的 "config/mess",或是一个完整类名 "org.test.Main",那么它们分别对应的文件是以classpath为根目录进行查找
/mess_xx_xx.properties
/config/mess_xx_xx.properties
/org/test/Main_xx_xx.properties
其实,点和斜杠都是目录分隔符,没有区别。
接下来,说一下语言和国家的查找顺序,如果指定的语言国家的文件不存在,则找系统的语言国家文件,若还是不存在,则找没有后缀的文件,如mess.properties
按它的查找顺序来看,属性文件不添加任何后缀,那么它就是一个默认语言环境。也可以用它来获取属性文件,当作读取配置文件。
例如
jdbc.properties
ResourceBundle resource=.......
driver=resource.getString("driverName");
url=resource.getString("url");
再来说一下最后一个问题MessageFormat.format,它是将一个字符串中的{0}{1}{2}之类的占位符,替换成指定的值。
例如
MessageFormat.format("1+2={0},{1}", 1+2, "passed" );
foramt后的结果就是: 1+2=3,passed
OVER.
分享到:
相关推荐
java国际化实例,内置源码,还有说明文档。源码包里有编译好的jar文件,已经可以执行,可以实现中文和英文界面的切换,无需要安装插件,调用系统资源,有需要的朋友们请下载吧。 个人体会:做项目时需要用到国际化的...
Java国际化(Internationalization,通常缩写为i18n)是一种设计和开发应用程序的方法,使得它们可以适应不同的语言和地域文化。在Java中,通过使用特定的API和资源文件,我们可以实现应用程序的国际化,以便在不同...
标题“不错的java图形化例子”可能是指一个包含了一系列Java GUI编程示例的项目或教程。这个项目可能涵盖了基础到进阶的GUI设计和交互,包括事件处理、窗口管理、组件使用、布局设计等方面的知识。 描述中的“不错...
总结,这个Struts2国际化例子源码展示了如何在Java web应用中实现多语言支持,通过配置Struts2框架、编写Action类、创建资源文件以及在JSP页面中使用标签,实现了对不同语言环境的适应。这个例子对于理解和实践...
Java 国际化(i18n)是一个关键特性,它允许软件应用程序为不同地区和语言的用户提供定制的用户体验。这个示例主要展示了如何在Java应用程序中实现国际化,以适应全球用户的需求。JSTL(JavaServer Pages Standard ...
这是利用java Annotation实现的菜单和工具栏国际化的实例,是《java学习脚印: 反射与注释(Annotation)》一文中综合实例的例子。博客参见:http://blog.csdn.net/wangdingqiaoit/article/details/20130539
Java国际化的实现主要依赖于`ResourceBundle`类。我们可以通过创建不同语言版本的`.properties`文件来提供多语言支持。例如,对于英语(en_US)和简体中文(zh_CN): - `messages_en_US.properties` - `messages_...
9. **国际化(Internationalization)**:Swing支持国际化,可以轻松地为不同语言的用户提供界面。 10. **线程管理**:Swing不是线程安全的,所有对Swing组件的修改应在Event Dispatch Thread (EDT)中进行,以避免...
在这个例子中,我们将深入探讨如何在Struts2框架中结合Spring和Hibernate实现国际化。 首先,我们需要了解Struts2的国际化配置。这通常涉及到创建资源文件,如`messages.properties`和`messages_zh_CN.properties`...
在"struts国际化例子"中,我们看到的是如何在Struts框架中实现国际化功能的一个实例。 首先,我们需要理解i18n的基本概念。"i18n"是“国际化”的缩写,这里的数字18代表单词"internationalization"中的字母数量。...
这个例子主要是为了帮助初学者理解如何在Struts2框架下进行国际化设置。以下将详细讲解Struts2-i18n的基本概念、实现步骤以及相关知识点。 **国际化(i18n)简介** 国际化(Internationalization)是指设计和开发...
在开发多语言支持的Web应用时,国际化(Internationalization,通常简写为i18n)是一个重要的考虑因素。Struts提供了良好的支持来实现这一功能,使得开发者能够轻松地为不同语言的用户提供本地化体验。 国际化的...
Wicket是一个流行的Java web应用程序框架,它提供了强大的组件模型和灵活的国际化支持。 **一、Wicket的国际化基础** 1. **什么是国际化(i18n)**:国际化是一种软件设计方法,使得应用程序能够适应不同地区的...
Java 技术实现国际化是一项关键的能力,特别是在开发支持多语言的应用程序时。国际化(Internationalization,通常简称为 i18n,因为“i”到“n”之间有18个字母)是让软件能够适应不同语言和地区的过程。下面将详细...
总结来说,创建Java国际象棋棋盘项目涉及到以下几个关键知识点: 1. 类和对象:使用面向对象编程设计棋盘、棋子和游戏引擎。 2. 二维数组:用二维数组表示棋盘结构。 3. 循环和条件语句:用于初始化棋盘和打印棋盘...
CheckerFloor.java 是一个国际象棋般的棋盘格做来场景中的地面。在这个文件中,我们可以看到 CheckerFloor 对象的创建和初始化过程,包括棋盘格的设置和渲染。 ColouredTile.java ColouredTile.java 是一个派生自 ...
这个"springmvc国际化demo"就是这样一个实例,它演示了如何在页面和Java代码中获取并使用国际化资源,帮助开发者更好地理解和应用这一特性。在实际项目中,可以扩展这个例子,增加更多的语言支持,以满足不同地区的...
其中,`java.text`包是专门处理文本格式化、国际化和本地化的重要工具集,广泛用于日期、时间、数字、货币、数字格式化等方面。在这个包中,有许多关键的类和接口,例如`Format`、`NumberFormat`、`DateFormat`、`...
在Struts2中实现国际化是一项常见的需求,它允许应用程序根据用户的语言和地区偏好显示不同的文本内容。下面我们将深入探讨如何在Struts2中实现国际化。 国际化(i18n)是一个术语,表示为不同地区和语言的用户定制...