MessageFormat 类用来格式化消息。非常的好用
import java.util.*;
import java.text.*;
public class MessageFormatDemo {
static void displayMessage(Locale currentLocale) {
System.out.println("currentLocale = " + currentLocale.toString());
System.out.println();
Object[] messageArguments = {
"Mars",
new Integer(7),
new Date()
};
MessageFormat formatter = new MessageFormat("");
formatter.setLocale(currentLocale);
String template = "At {2,time,short} on {2,date,long}, we detected " +
"{1,number,integer} spaceships on the planet {0}.";
formatter.applyPattern(template);
String output = formatter.format(messageArguments);
System.out.println(output);
}
static public void main(String[] args) {
displayMessage(new Locale("en", "US"));
}
}
tempate 参数说明
Arguments for template
|
Argument
|
Description
|
{2,time,short}
|
The time portion of a Dateobject. The short style specifies theDateFormat.SHORT formatting style.
|
{2,date,long}
|
The date portion of a Dateobject. The same Dateobject is used for both the date and time variables. In the Objectarray of arguments the index of the element holding the Date object is 2. (This is described in the next step.)
|
{1,number,integer}
|
A Number object, further qualified with the integernumber style.
|
分享到:
相关推荐
在Java编程中,`MessageFormat.format`方法是一个强大的工具,用于生成格式化的字符串,这些字符串可以适应不同的语言环境和数据类型。这个方法是基于`java.text.MessageFormat`类,它允许我们创建动态的、可重用的...
dateTime = MessageFormat.format("{0,date,yyyy-MM-dd-HH-mm:ss:ms}" , new Object[] { new java.sql.Date(System.currentTimeMillis()) }); ``` 这个示例代码使用 MessageFormat 将当前的日期和时间格式化为 "yyyy...
String formattedString = MessageFormat.format(pattern, name, dateFormat.format(currentDate)); System.out.println(formattedString); } } ``` 在此示例中,我们创建了一个包含名字和日期的模式,并使用`...
9. **国际化**:`java.util.Locale`和`java.text.MessageFormat`支持多语言环境,使应用能适应不同地区的文化习惯。 10. **XML处理**:`javax.xml`包提供了处理XML文档的API,如`DOM`和`SAX`解析器,以及`...
3. `MessageFormat.format()`: `MessageFormat`类提供了一种将参数插入到文本模板中的方式,其中参数可以是日期。在例子中,`"{0,date,yyyy-MM-dd-HH-mm:ss:ms}"`定义了日期的格式,并使用`System....
9. **国际化**:`java.util.Locale`和`java.text.MessageFormat`支持不同地区的语言和格式。 10. **事件模型**:`java.awt.event`和`javax.swing.event`提供了事件处理机制,用于GUI应用中的用户交互。 11. **...
Ø java.text.MessageFormat:用于格式化带占位符的字符串。 为了实现程序的国际化,必须先提供程序所需要的资源文件。资源文件的内容是很多key-value对。其中key是程序使用的部分,而value则是程序界面的显示字符...
7. **java.text**:处理文本格式化和解析,如DateFormat、NumberFormat、MessageFormat等。 8. **java.concurrent**:多线程和并发编程包,包括Thread、ExecutorService、Future、Semaphore等工具类。 9. **java....
1. 使用`MessageFormat.format()`方法,我们可以将日期对象格式化为字符串。这里的`{0,date,yyyy-MM-dd-HH-mm:ss:ms}`定义了日期的格式,其中`{0}`是占位符,`date`指定了类型,`yyyy-MM-dd-HH-mm:ss:ms`是具体的...
- 使用工具如`java.text.MessageFormat`来处理包含变量的本地化字符串。 - 对于复杂的本地化需求,可以考虑使用Java的`java.time`包和`java.text.DecimalFormatSymbols`。 7. **扩展性**: Java国际化不仅限于...
### JAVA初学教程之Java.Text包详解 #### 引言 在Java编程世界里,`java.text`包扮演着至关重要的角色,它提供了一系列强大的工具类和接口,用于处理文本、日期、数字以及消息等内容。对于Java初学者来说,熟练掌握...
2. `java.text`包:这个包提供了用于格式化日期、时间、数字、货币和文本的类,如`SimpleDateFormat`用于日期和时间格式化,`NumberFormat`用于数字格式化,`ChoiceFormat`用于基于值选择格式,以及`MessageFormat`...
String output = MessageFormat.format(message, variables); ``` 这里,`{0}`和`{1}`是占位符,分别被替换为`"World"`和当前日期的完整格式。`MessageFormat`支持复杂的格式化指令,如`{1,date,full}`指定了日期的...
7. **国际化和本地化**:`java.util.Locale`和`java.text.MessageFormat`,支持不同地区的语言和文化习惯。 8. **反射机制**:`java.lang.reflect`包,允许在运行时检查类、接口、构造器和方法的信息,并能动态调用...
10. **国际化**:`java.util.Locale`和`java.text.MessageFormat`,支持多语言环境的程序开发。 11. **数据库连接**:JDBC(Java Database Connectivity),通过`java.sql`包提供数据库操作接口,如Connection、...
5. **java.text**: 这个包包含处理文本、日期、数字和消息的类,如NumberFormat用于格式化数字,DateFormat用于日期和时间的格式化,MessageFormat用于构造和解析消息。 6. **java.time**: Java 8引入的新时间日期...
17. **日期时间的国际化**:可以结合`java.text.MessageFormat`和`java.time.format.DateTimeFormatter`实现多语言日期时间格式化。 综上所述,Java时间显示和处理是一个复杂但重要的主题,涵盖了日期、时间、时区...
`java.text`包是Java国际化和本地化策略的关键部分,它包含了各种格式化类,如`NumberFormat`用于数字格式化,`DateFormat`用于日期和时间格式,以及`MessageFormat`用于创建多语言的消息。`SimpleDateFormat`是`...