1,ResourceBundle
使用ResourceBundle访问本地资源
在设计时,我们往往需要访问一些适合本地修改的配置信息,如果作为静态变量,那么每次修改都需要重新编译一个class,.config保存此类信息并不适合,这时我们需要ResourceBundle。
通过ResourceBundle,我们需要访问位于/WEB-INF/classes目录下的一个后缀名为properties的文本类型文件,从里面读取我们需要的值。
Locale locale = Locale.getDefault();
ResourceBundle localResource = ResourceBundle.getBundle("ConnResource", locale);
String value = localResource.getString("test");
System.out.println("ResourceBundle: " + value);
这里对应了/WEB-INF/class/ConnResource.properties文件内容为:
test=hello world
打印出来的结果就是hello world
请注意,这里我们可以利用Locale和ResourceBundle的这个组合创建国际化的java程序。我们可以把locale实例化为new Locale("zh","CN");
通过ResourceBundle.getBundle("MessagesBundle", locale);
系统将自动寻找MessagesBundle_zh_CN,即定义为中国大陆地区简体中文。如果没有该文件,则会依次寻找MessagesBundle_zh,MessagesBundle,直到找到为止。
2,有时候我们需要格式化输出资源文件如下
welcome=hello {0}
这时就需要 MessageFormat类了
简单用法
MessageFormat form = new MessageFormat("hello {0}");
Object[] argms = {"world"};
System.out.println(form.format(argms));//hello world
这样就在实际开发中就可以自己开发一个国际化组件了。
分享到:
相关推荐
这一过程包括软件的本地化和国际化两个方面。本地化是指针对特定国家或地区的语言、数字、货币和日期格式进行定制;国际化则是指在设计阶段就让软件具备支持多国语言和文化的能力,无需对源代码进行大规模修改即可...
实现国际化功能的传统方法是为每一个国家或地区设计单独的页面,但这种方法在实际操作中工作量巨大,且难以维护和升级。为了应对这一挑战,现在广泛采用的做法是利用资源文件来管理需要国际化的信息。资源文件中包含...
除了使用.properties文件,Java还提供了`java.util.Formatter`和`java.text.MessageFormat`类,用于格式化和组合字符串,这样可以处理包含变量的文本。例如,`MessageFormat.format()`方法允许我们在字符串中插入...
Struts2 国际化实现详解 ...Struts2 框架提供了一个灵活的国际化解决方案,我们可以通过资源文件和拦截器来实现语言切换。同时,我们也可以使用 `Locale` 对象来接收语言参数,并根据语言参数加载相应的资源文件。
Java的国际化(i18n)是为支持全球不同地区的用户而设计的一种技术,它使得软件可以适应多种语言和文化环境。在Java中,实现国际化主要涉及到以下几个关键知识点: 1. **Properties文件**: Java国际化的核心是...
7. **国际化日期和数字格式**:Java提供`java.text.SimpleDateFormat`和`java.text.DecimalFormat`类来格式化日期和数字,根据Local自动调整格式。 以上就是Java Web应用中使用Local实现多语言切换的基本流程。通过...
在Flex中,国际化主要是通过`ResourceBundle`类和`locale`属性来实现的。`ResourceBundle`是Flex提供的一套资源管理机制,它允许开发者将应用程序中的字符串、图像等可变资源与代码分离,便于根据不同地区创建不同的...
根据给定的信息,我们可以梳理出以下关于 Java 国际化(I18N)和支持多语言资源包处理的相关知识点。 ### Java 国际化的概念 Java 的国际化(Internationalization,简称 I18N)是指设计应用程序使其能在多种语言...
9. **国际化和本地化**: Spring 2.5提供了更好的支持来处理应用的多语言环境,通过`MessageSource`接口和`ResourceBundle`,可以轻松实现消息和文本的国际化。 10. **测试框架**: Spring 2.5包含了一个强大的测试...
Struts 1.1 支持多语言环境,通过 `ResourceBundle` 实现消息和错误的国际化。`struts.properties` 和 `local.properties` 文件用于配置本地化信息。 8. **异常处理**: Struts 提供了全局的异常处理机制,通过 `...