先读取properties文件,再使用MessageFormat 格式化字符串。
MessageFormat - java.text.MessageFormat
类允许你使用运行时指定的参数替换一个消息字符串中的一部分(在这种情况下,是一个从一个资源包得到的消息)。这在你创建一个句子的场合中是有用的,但是
词会以不同的语言按照不同的顺序出现。消息中的占位符字符串{0}用第一个运行时参数替换,{1}用第二个运行时参数替换,以此类推。
要这样做,必须首先创建两个资源束
将
这个特定消息的格式定义成 "{0} while loading: {1} ",而第二个束的格式为 "{1} loaded
unsuccessfully: {0} "。{0} 代表要替换消息中自变量的占位符。占位符以 0 开始并增加。
当替换了自变量并实际创建要显示的消息时,使用 MessageFormat.format() 方法。这要获取两个自变量,第一个是要格式化的消息,第二个是自变量的 Object []。以下演示全部代码:
import java.text.*;
public class format-it {
public static void main (String args[]) {
String format1 = "{0} while loading: {1} ";
String format2 = "{1} loaded unsuccessfully: {0} ";
String exceptionName = "I/O Exception ";
String filename = "Foobar.java ";
Object [] fmtargs = {exceptionName, filename};
System.out.println (
MessageFormat.format (format1, fmtargs));
System.out.println (
MessageFormat.format (format2, fmtargs));
}
}
运行的输出如下所示:
Foobar.java while loading: I/O Exception
I/O Exception loaded unsuccessfully: Foobar.java
分享到:
相关推荐
".properties文件读取及占位符${...}替换源码解析" .properties文件读取及占位符${...}替换是Java开发中常用的技术,通过使用.properties文件来存储配置信息,并使用占位符${...}来替换这些配置信息。下面将详细...
标题“maven 占位符打包”指的是在Maven的POM.xml文件中使用特定的占位符,以便在不同环境中替换为相应的配置值。这样可以实现代码的复用和环境的隔离,提高开发效率并降低出错的可能性。 描述中的“工程运行环境有...
该类作为Spring的容器后处理器,在应用程序上下文初始化阶段自动读取指定的属性文件,并将其中的键值对映射到配置文件中的占位符上,从而完成具体的配置替换。这种机制特别适用于以下场景: - **数据库配置**:如...
MessageSource使用.properties文件来存储国际化文案,每个.properties文件对应一个语言环境下的文案集合。 MessageFormat是Java标准库中的一个类,用于解析和格式化字符串。它可以解析带占位符的字符串,例如"{0}...
`PropertyPlaceholderConfigurer`是Spring提供的一个Bean工厂后处理器,它的主要任务是在Spring容器初始化Bean时,替换掉XML配置文件中所有`${...}`形式的占位符,将其替换为对应属性文件中的实际值。这使得我们可以...
在使用`getText()`方法时,我们可以传递参数来替换这些占位符。例如: ```java String username = "John"; String greeting = getText("hello", new Object[]{username}); ``` 这将返回`Hello, John`。 6. **...
在上面的配置中,我们使用PropertyPlaceholderConfigurer来加载jdbc.properties配置文件,并将ignoreUnresolvablePlaceholders设置为true,以便正确地解析占位符。 本文介绍了如何解决Spring和Mybatis整合占位符...
它支持多种特性,如自动检测用户浏览器的语言设置、加载多个语言包、缓存已加载的语言数据以及处理占位符替换等。 首先,要使用这个插件,你需要在你的HTML页面中引入jQuery库和`jquery.i18n.properties-min-1.0.9....
Spring会自动替换这些占位符,使得我们的数据源bean能够正确连接到数据库。 除了上述方法,Spring还提供了`@Value`注解来在Java配置类中注入Properties的值。例如: ```java @Configuration public class ...
`resolveNestedPlaceholders`方法实际调用了`AbstractPropertyResolver#resolveRequiredPlaceholders`,此方法会递归地替换所有占位符,直到所有引用的属性都被解析。`ignoreUnresolvableNestedPlaceholders`属性...
Spring允许我们在配置文件中使用 `${...}` 来引用占位符,然后通过PropertyPlaceholderConfigurer 或者 @Value 注解来解析这些占位符,并在运行时替换为实际值。 例如,如果你有一个名为 `application.properties` ...
加载完配置文件后,Spring会自动处理Bean定义中的占位符`${...}`,将其替换为Properties文件中对应的值。例如,对于`MQJndiTemplate` Bean的配置,我们可以这样设置JNDI环境: ```xml ${mq.java.naming....
)作为占位符,这在理解查询逻辑时可能会带来不便。本文将详细介绍如何配置Hibernate以显示不带问号的完整SQL。 首先,我们要启用Hibernate的SQL日志。这通常通过配置`hibernate.show_sql`属性来实现。在你的`...
4. **处理占位符**: Java的`Properties`类还支持使用`${}`语法进行变量替换。例如,配置文件中可以有: ``` db.url=jdbc:mysql://${db.host}:${db.port}/mydb db.host=localhost db.port=3306 ``` 在读取...
这里,`PropertyPlaceholderConfigurer` 会查找指定位置(例如 `config.properties`)的属性文件,并将其中的键值对与XML或Java配置中的占位符进行匹配替换。这使得我们的配置更加灵活,可以将一些敏感信息(如...
在运行时,通过正则表达式或其他方式替换这些占位符,生成最终的输出文件。正则表达式是一种强大的文本处理工具,可以用于查找、替换和提取文本。在Java中,我们可以使用`java.util.regex`包提供的`Pattern`和`...
本项目“ios-带placeholder的textView.zip”显然关注的是如何为TextView添加占位符(Placeholder)功能,这是iOS原生TextView所不直接支持的。通过分析提供的文件名CustomTextVeiw.h和CustomTextVeiw.m,我们可以...
2. `PreferencesPlaceholderConfigurer`:这个Bean的作用是将Properties文件中的值注入到其他Bean的属性中,通过占位符替换。 ```xml <property name="properties" ref="configProperties"/> ``` `...
通过使用 `${property}` 形式的占位符,MyBatis 可以在运行时替换为对应的属性值。这在处理数据库连接信息、日志配置等敏感信息时尤其有用,因为它们可以被集中管理,而不是直接硬编码在配置文件中。 2. **直接在 ...
"PropertiesEditor"这个标签暗示这是一个特定的编辑器程序,可能是一个Java类或者GUI应用程序,用于创建、编辑和管理.properties文件。这类编辑器通常会提供以下功能: 1. **文本编辑**:允许用户输入和修改键值对...