一、用法:
MessageFormat用来格式化一个消息,通常是一个字符串,比如
示例1:
String pattern = "my name is {0}, come from {1}";
Object[] params = new Object[]{"lucy","China"};
String value = MessageFormat.format(pattern,params);
运行结果:my name is lucy, come from China
示例2:
String pattern = "my name is '{0}'";
Object[] params = new Object[]{"lucy"};
String value = MessageFormat.format(pattern,params);
运行结果:my name is {0}
二、注意:
1.pattern的内容如果包含花括号如{...}或者{sadsa},则应该用单引号括起来。
例如,String pattern = "变量{0}正确的格式为${XXX}"
应该写成String pattern = "变量{0}正确的格式为‘${XXX}’",
否则会报错IllegalArgumentException
相关推荐
Java Web国际化,通常称为I18N,是Java语言为了解决多语言环境下的软件...通过合理使用DateFormat、NumberFormat、MessageFormat和ResourceBundle,可以有效地解决不同地区用户的需求,提高应用的可访问性和可用性。
注意:不在积极开发中 该项目目前未得到积极开发。 (据我所知)已发布的v1仍可正常使用,但已在2016年寿终正寝。目前,我尚未从事任何多语言项目的工作,但我可以继续进行此工作。 v2将是一个纯npm(非流星专用)...
9.6.4 使用MessageFormat处理包含占位符的字符串 349 9.6.5 使用类文件代替资源文件 350 9.6.6 使用NumberFormat格式化数字 350 9.6.7 使用DateFormat格式化日期 352 9.7 本章小结 355 本章练习 355 第10章 ...
使用`final`关键字和`private`访问修饰符可以确保数据的不可变性,这在多线程环境中尤为重要,有助于提高代码的稳定性和安全性。 #### I/O操作:高效使用流 在处理输入输出操作时,应尽可能利用缓冲区和流的高级...
Java的`java.text`包提供了`MessageFormat`和`NumberFormat`等类,支持多语言环境,它们在处理字符串时会考虑相应的字符集。 7. 总结 Java字符集处理涉及编码转换、文件读写、网络通信和数据库操作等多个方面。理解...
3. **使用国际化工具类**:Java提供了`java.text.MessageFormat`和`java.util.ResourceBundle`等类来处理多语言文本,这些工具类可以帮助开发者更方便地处理不同语言的文本,包括汉字。 ### Java中的资源文件和字体...
17. **日期时间的国际化**:可以结合`java.text.MessageFormat`和`java.time.format.DateTimeFormatter`实现多语言日期时间格式化。 综上所述,Java时间显示和处理是一个复杂但重要的主题,涵盖了日期、时间、时区...
7. **国际化API的使用**:Java提供了一系列的API,如`java.text.MessageFormat`和`java.util.Locale`,用于处理国际化相关的任务,比如格式化字符串和获取当前用户系统区域设置。 8. **配置项目属性**:在MyEclipse...
6. **国际化(i18n)**:在处理多语言环境时,使用`java.text`包中的`Format`和`MessageFormat`类,它们支持不同语言和地区的字符编码。 7. **XML解析**:处理XML文件时,需关注XML声明中的编码信息,如`...
Java API(应用程序编程接口)是Java开发者不可或缺...通过查阅文档,你可以了解每个类的构造函数、方法、常量,以及它们的使用示例和注意事项。这不仅对于初学者,对于经验丰富的开发者来说,也是一个极好的参考资源。
除了使用 += 运算符和 StringBuilder 之外,Java 还提供了其他字符串拼接方式,例如使用 String.format() 方法和 MessageFormat.format() 方法。 String.format() 方法 String.format() 方法可以用于格式化字符串...
根据给定的文件信息,我们可以总结出以下...以上知识点覆盖了Java中文件操作的基本概念、常用类的使用方法、性能优化策略、多线程安全考量以及异常处理的最佳实践,对于深入理解和掌握Java文件操作具有重要的指导意义。
13. **Format格式化**:`java.text.Format`和其子类(如`SimpleDateFormat`)用于日期和时间的格式化,`MessageFormat`用于复杂的消息格式化。 这些知识点都是Java编程中的基础部分,理解和掌握它们对于编写高效、...
BeanUtils也支持国际化,可以通过PropertyResourceBundle和MessageFormat进行国际化消息的处理。 10. **自定义转换策略** 如果默认的转换策略不能满足需求,可以通过实现`org.apache.commons.beanutils.Converter...
2. **创建字符串**:除了直接赋值外,还可以使用`new String()`构造函数,或通过`String`的静态方法`valueOf()`和`concat()`创建字符串。 3. **字符串长度**:使用`length()`方法可以获取字符串的长度,它返回的是...
- **资源包注意事项**:了解资源包的局限性和最佳实践。 #### 格式化消息 为了使应用程序能够正确显示符合当地习惯的消息,Java 提供了一系列工具来帮助格式化日期、时间和数字。 - **日期和时间格式**:利用 `...
10. **java.applet**: 用于创建和运行Java小应用程序(Applet),尽管在现代Web开发中使用较少,但仍然是Java历史的一部分。 通过阅读rt.jar的源代码,开发者可以学习到Java语言的核心设计原则、API的实现策略以及...
14. **Java的国际化**:通过资源束(Resource Bundle)和`java.text.MessageFormat`等工具支持多语言和区域设置,提高软件的全球化适应能力。 #### JSP和Servlet 1. **JSP的隐含对象**:如request、response、...
icu_parser库在解析ICU格式字符串时会进行语法分析和数据结构构建,虽然效率相对较高,但在大量处理时仍需要注意性能优化。可以通过缓存解析结果、预处理消息模板等方式减少不必要的解析操作。 **7. 结论** icu_...
3. **MessageFormat**:`java.text.MessageFormat`类允许你以特定的格式动态地组合和格式化消息。它支持参数化的消息,可以根据Locale来返回不同语言版本的消息。 4. **I18n框架**:在实际开发中,为了简化国际化...